Skip to main content

19_Navidrome

navidrome-navidrome-1

🎧 Your Personal Streaming Service

Imagedeluan/navidrome:latest
Version0.61.2
EtatUp
Compose projectnavidrome
Reseaunavidrome_default
URLhttps://navidrome.juxjux.ovh
Sourcehttps://github.com/navidrome/navidrome

Ports

HoteContainerIP
45334533/tcp0.0.0.0

Volumes

Source (hote)DestinationTypeMode
/home/debian/music/musicbindrw, :shared
/home/debian/docker/navidrome/data/databindrw

Integration Claude Code — MCP

Statut MCPMCP actif
Outils (prefix)mcp__navidrome__
ConfigurationScript Python : C:\Users\eliob\.claude\mcp_navidrome.py | Auth : Subsonic API avec hachage MD5 (user + token + sel)

Outils disponibles

  • ping
  • get_artists
  • get_artist
  • get_albums
  • get_album
  • get_song
  • get_genres
  • get_random_songs
  • get_playlists
  • get_playlist
  • create_playlist
  • get_starred
  • star
  • unstar
  • search
  • get_now_playing

Ce que nous pouvons faire ensemble

  • Parcourir artistes, albums et pistes de la mĂ©diathèque musicale
  • Rechercher un titre, artiste ou album
  • Voir ce qui est en cours de lecture (now playing)
  • GĂ©rer les playlists (crĂ©ation, lecture)
  • Étoiler/dĂ©signer des favoris
  • GĂ©nĂ©rer une sĂ©lection alĂ©atoire par genre

Scan quotidien automatique — 2026-06-24

Un cron tourne chaque nuit à 04h30 UTC pour rafraîchir le cache kDrive et déclencher un scan Navidrome.

Script

/home/debian/navidrome_scan.sh — log : /var/log/navidrome_scan.log

30 4 * * * bash /home/debian/navidrome_scan.sh

Fonctionnement

  1. vfs/refresh recursive sur le mount /home/debian/music (port RC 5576) — force la mise à jour du listing kDrive sans redémarrer le service rclone
  2. Lancement du scan Navidrome via l'API Subsonic : GET /rest/startScan

Ce script ne redémarre pas le service rclone ni le container Navidrome : le vfs/refresh suffit pour que les nouveaux albums kDrive deviennent accessibles.

Auth RC sur kdrive-music.service

Le service kdrive-music.service a été mis à jour le 2026-06-24 pour inclure --rc-user=rcadmin --rc-pass=RcMusic2026!, ce qui permet d'utiliser vfs/refresh depuis rclone 1.74.3 (qui exige une auth RC).

Commande de refresh manuel :

rclone rc --rc-addr 127.0.0.1:5576 --rc-user=rcadmin --rc-pass=RcMusic2026! vfs/refresh recursive=true

REX — 2026-06-24 : albums kDrive non visibles dans Navidrome

Contexte

De nouveaux albums ajoutés sur kDrive n'apparaissaient pas dans Navidrome. Le service kdrive-music.service était actif mais le cache VFS (dir-cache-time 72h) n'avait pas encore expiré pour les nouveaux dossiers.

Cause

Avec --dir-cache-time 72h, rclone met en cache le listing des répertoires pendant 72h. Tout nouveau dossier ajouté sur kDrive est invisible jusqu'à l'expiration du cache ou un refresh explicite.

Solution immédiate

rclone rc --rc-addr 127.0.0.1:5576 --rc-user=rcadmin --rc-pass=RcMusic2026! vfs/refresh recursive=true
curl "https://navidrome.juxjux.ovh/rest/startScan?u=julien&p=Motdepasse18!&v=1.16.0&c=claude&f=json"

Solution pérenne : cron quotidien navidrome_scan.sh (cf. section ci-dessus).


REX — 2026-06-13 : FUSE corrompu / Symfonium inaccessible

Contexte

Après l'incident sécurité rclone du 2026-06-09 (CVE-2026-41179), le service kdrive-music.service a été relancé. Il est resté actif 4 jours sans crash apparent, mais le mount FUSE /home/debian/music était silencieusement corrompu.

SymptĂ´mes

  • Symfonium (Subsonic) : erreur "trop d'erreurs, arrĂŞt de lecture" sur tous les appareils portables
  • Logs Navidrome : transport endpoint is not connected sur tous les fichiers audio
  • systemctl status kdrive-music.service : active (running) depuis 3 jours — aucune indication du problème

Cause

Le process rclone était vivant mais la connexion noyau FUSE était morte. Pas de crash = pas de restart automatique par systemd.

Procédure de résolution

  1. Redémarrer le service rclone : sudo systemctl restart kdrive-music.service
  2. Vérifier que le mount répond : ls /home/debian/music | head -5
  3. Redémarrer le container Navidrome — nécessaire même avec :shared, car le container garde l'ancienne référence FUSE corrompue
  4. Sur les appareils : force-fermer Symfonium et relancer

Notes

  • La propagation :shared ne suffit pas Ă  propager un nouveau mount FUSE Ă  un container dĂ©jĂ  dĂ©marrĂ© — le container doit ĂŞtre redĂ©marrĂ©.
  • Attention spool /tmp : un restart du service rclone avec --vfs-cache-mode full peut crĂ©er un fichier /tmp/rclone-spool* de plusieurs Go si des fichiers cachĂ©s sont marquĂ©s "dirty". PrĂ©fĂ©rer vfs/refresh (avec auth RC) au restart quand le FUSE n'est pas corrompu.