# Copy to .env next to your docker-compose file and fill in. cp .env.example .env # Used by docker-compose.yml (zieht fertige Images) und docker-compose.dev.yml (baut lokal). # REGISTRY/TAG unten braucht nur der Pull-Weg (docker-compose.yml). # ── URLs pre-filled on the frontend setup screen ───────────────────────────── NAVIDROME_URL=https://music.example.com BACKEND_URL=https://backend.example.com SCROBBLE_URL=https://scrobble.example.com # ── Library / downloads (backend) ──────────────────────────────────────────── # Absolute music path — mounted 1:1 into the backend (no remapping), same value inside the container. MUSIC_PATH=/opt/navidrome/music AUDIO_FMT=mp3 AUDIO_QUALITY=0 MAX_PARALLEL=2 DOWNLOAD_BACKEND=ytdlp TICKETMASTER_API_KEY= # ── Android APK download button + in-app updater ───────────────────────────── # The backend proxies the fixed Gitea release ("apk-latest") over the LAN, so Gitea can stay internal. GITEA_URL=http://192.168.2.51:3000 # Gitea-Basis, die der BACKEND-CONTAINER erreicht. # Muss nicht Giteas eigene ROOT_URL sein — das Backend baut # die Asset-URL auf diesen Host um (Test aus dem Container: # curl -sI $GITEA_URL/api/v1/version). GITEA_REPO=Docker/NovaSonic GITEA_TOKEN= # read token (only needed for a private repo) GITEA_APK_TAG=apk-latest # ── Fertige Images (nur docker-compose.yml) ────────────────────────────────── # REGISTRY = where `npm run push-images` pushed to and where the host pulls from. # Gitea container registry (lowercase owner): gitea.honeyy.duckdns.org/docker # Docker Hub: docker.io/youruser # Plain-HTTP internal registries need the host's Docker daemon to allow it # (/etc/docker/daemon.json → {"insecure-registries":["192.168.2.51:3000"]}). REGISTRY=gitea.honeyy.duckdns.org/docker TAG=latest