Navidrome: Servidor de música ligero compatible con múltiples clientes
docker-compose.yml
services:
navidrome:
image: ghcr.io/navidrome/navidrome:latest
user: 1000:1000 # debe coincidir con el UID del usuario que tenga acceso a los volúmenes
ports:
- "4533:4533"
restart: unless-stopped
network_mode: bridge
container_name: Navidrome
environment:
ND_SCANSCHEDULE: 1h
ND_LOGLEVEL: "debug"
ND_AGENTS: "lastfm,deezer"
ND_SESSIONTIMEOUT: 24h
ND_UILOGINBACKGROUNDURL: "https://ejemplo.com/fondo.jpg"
ND_ENABLEDOWNLOADS: true
ND_LASTFM_ENABLED: true
ND_LASTFM_LANGUAGE: es
ND_LISTENBRAINZ_ENABLED: true
ND_SPOTIFY_ID: "your_spotify_client_id"
ND_SPOTIFY_SECRET: "your_spotify_secret"
ND_ENABLEEXTERNALSERVICES: true
ND_BASEURL: "https://tu-dominio.tld"
ND_COVERJPEGQUALITY: 100
ND_PASSWORDENCRYPTIONKEY: "clave_larga_de_encriptado"
ND_LASTFM_APIKEY: "tu_lastfm_apikey"
ND_LASTFM_SECRET: "tu_lastfm_secret"
ND_ENABLESHARING: "true"
ND_ENABLETRANSCODINGCONFIG: "true"
ND_SCANNER_PURGEMISSING: "always"
ND_DEFAULTLANGUAGE: "es"
ND_SCANNER_EXTRACTOR: "taglib"
ND_PREFERSORTTAGS: "false"
volumes:
- /ruta/local/navidrome/data:/data
- /ruta/a/tu/musica:/music:ro
Detalles clave
-
Puerto 4533: acceso principal a la interfaz web:
http://<IP-del-servidor>:4533 -
Volúmenes:
/data: configuración de Navidrome./music: biblioteca musical (solo lectura).
-
Integraciones activadas:
- Last.fm, Spotify y ListenBrainz.
- Descargas, compartición de enlaces y configuración avanzada de transcodificación.
Acceso y uso
-
Levantar contenedor:
docker-compose up -d -
Abrir la interfaz en el navegador.
-
Configurar usuario admin, biblioteca y servicios externos.
Notas personales
- Protegido con Authentik usando proxy provider, sin romper compatibilidad con Subsonic.
- La interfaz de login tiene fondo personalizado.