← Retour au README · English guide
Aucun fichier .env n’est nécessaire :
git clone https://github.com/JavaScript-X/NaviPort.git
cd NaviPort
docker compose up -dOuvrir http://127.0.0.1:3000. NaviPort affiche son assistant initial et génère automatiquement son secret de session.
- Ouvrir le Spotify Developer Dashboard.
- Créer une application puis ouvrir ses paramètres.
- Cocher Web API. NaviPort n’utilise pas Web Playback SDK.
- Copier dans Spotify la Redirect URI affichée par NaviPort.
- Cliquer sur Add à côté de cette URI puis enregistrer l’application Spotify.
- Copier le Client ID de Spotify dans NaviPort.
- Enregistrer puis cliquer sur Se connecter avec Spotify.
Aucun Spotify Client Secret n’est demandé. NaviPort utilise OAuth PKCE.
Pour un NAS, ouvrir NaviPort depuis son domaine HTTPS avant de remplir l’assistant. Il doit afficher une adresse semblable à :
https://naviport.example.com/auth/callback
Spotify impose HTTPS sauf pour une adresse de bouclage explicite. localhost,
les adresses HTTP du réseau local, les jokers et une URL différant par une
simple barre oblique ne sont pas acceptés.
En local, toujours ouvrir NaviPort avec http://127.0.0.1:PORT, jamais
http://localhost:PORT. NaviPort corrige désormais automatiquement les liens
utilisant localhost.
En mode développement Spotify, ajouter chaque utilisateur autorisé dans les paramètres de gestion des utilisateurs de l’application.
Contrôler le déploiement :
docker compose up -d
docker compose ps
docker compose logs -f naviportPour mettre à jour plus tard :
docker compose pull
docker compose up -d- Ouvrir l’interface web de ZimaOS.
- Aller dans App Store, cliquer sur +, puis Install a customized app.
- Choisir l’import Docker Compose.
- Copier le contenu de
deploy/zimaos/compose.yaml. - Installer l’application.
- Ouvrir le port
3000depuis la tuile NaviPort. - Suivre l’assistant de première configuration.
Le manifest contient les métadonnées ZimaOS/CasaOS et fonctionne sur les machines amd64 et arm64.
Pour se connecter depuis un autre appareil, publier NaviPort derrière un
reverse proxy HTTPS, conserver TRUST_PROXY=1 et utiliser exactement la même
URL HTTPS dans le manifest et le tableau de bord Spotify.
- Configurer un pool Apps dans TrueNAS s’il n’est pas déjà actif.
- Ouvrir Apps → Discover Apps.
- Ouvrir le menu puis choisir Install via YAML.
- Saisir
naviportcomme nom d’application. - Copier le contenu de
deploy/truenas/compose.yaml. - Enregistrer puis attendre l’état Running.
- Ouvrir
http://IP_TRUENAS:3000ou l’adresse HTTPS du reverse proxy. - Suivre l’assistant de première configuration.
Si le port 3000 est déjà utilisé, modifier uniquement la partie gauche :
ports:
- "13000:3000"Le PORT interne reste 3000.
Configuration recommandée :
SPOTIFY_REDIRECT_URI=https://naviport.example.com/auth/callback
TRUST_PROXY=1Le reverse proxy doit :
- terminer la connexion HTTPS ;
- transférer les requêtes vers
naviport:3000; - conserver le nom d’hôte d’origine ;
- transmettre
X-Forwarded-Proto: https; - diriger
/auth/callbackvers la même instance NaviPort.
Enregistrer exactement cette même URL HTTPS chez Spotify. Ne pas exposer directement NaviPort sur Internet sans TLS et sans les protections adaptées à votre serveur domestique.
Avec les manifests NAS, passer TRUST_PROXY à 1 avant le déploiement.
L’assistant déduit la callback depuis l’adresse HTTPS ouverte dans le navigateur.
La configuration se trouve dans /data/config.json. Pour recommencer avec le
Compose principal :
docker compose down
docker volume rm naviport_naviport_data
docker compose up -dCette commande déconnecte les utilisateurs et supprime uniquement la configuration OAuth locale de NaviPort.
- Se connecter à Spotify dans NaviPort.
- Ajouter une collection entière ou choisir des morceaux précis.
- Télécharger l’export.
- Copier les URL Spotify dans Downtify.
- Laisser Downtify écrire dans le dossier déjà surveillé par Navidrome.
- Attendre ou déclencher le prochain scan Navidrome.
Les lignes commençant par # sont des commentaires. Chaque autre ligne contient
une URL Spotify.
L’URI enregistrée chez Spotify et SPOTIFY_REDIRECT_URI doivent être
strictement identiques : protocole, domaine, port, chemin, casse et barre
oblique finale.
Consulter les logs du conteneur et vérifier que le reverse proxy transmet les
cookies. Si HTTPS se termine au niveau du proxy, utiliser TRUST_PROXY=1.
Spotify peut limiter l’accès aux morceaux des playlists à celles possédées par l’utilisateur ou sur lesquelles il collabore. Les limites du mode développement peuvent également s’appliquer.
docker inspect --format '{{json .State.Health}}' naviport
docker logs naviport