mirror of
https://github.com/nickyeoman/docker-compose-cookbooks.git
synced 2026-09-03 18:36:22 +00:00
Existing content preserved and reordered to the canonical section order; missing sections generated from each stack's compose data (ports, volumes, env vars, image links). Fixes copy-paste errors in Dockhand sections (qbittorrent pointed at archivebox; invokeai/thunderbird said SERVICENAME) and persistant->persistent typos in gatus. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
spotDL
Overview
spotDL is a command-line music downloader that finds Spotify tracks on YouTube and downloads them with album art, lyrics, and metadata. This stack runs the optional web UI, providing a browser interface where you can paste Spotify links to download tracks, albums, or playlists.
Project Details
- Project Repository: https://github.com/spotDL/spotify-downloader
- Container Image: spotdl/spotify-downloader
- Web UI Port:
8800
Getting Started
Open http://localhost:8800 in your browser:
- Find a Spotify track, album, or playlist URL
- Paste it into the spotDL web UI
- Click download — spotDL finds the song on YouTube and saves it as an MP3 with full metadata
Downloaded files appear in the /music volume.
Environment Variable Notes
| Variable | Description |
|---|---|
SPOTDL_IMAGE |
Container image (default: spotdl/spotify-downloader:latest) |
SPOTDL_RESTART |
Restart policy (default: unless-stopped) |
SPOTDL_PORT |
Published port for the web UI (default: 8800) |
VOL_PATH |
Base path for persistent data volumes (default: /data) |
Volume Notes
| Volume | Purpose |
|---|---|
${VOL_PATH:-/data}/spotdl/music |
Downloaded music files |
Network Notes
Requires an external proxy network. Create it once with:
docker network create proxy
Docker Run
docker run -d \
--name=spotdl \
-p 8800:8800 \
-v ${VOL_PATH:-/data}/spotdl/music:/music \
--network proxy \
--restart unless-stopped \
spotdl/spotify-downloader:latest \
web
Additional Notes / Gotchas
Nothing specific to this stack so far.
Dockhand Stack, Deploy from Git
- Cookbooks Repository
- stackname: spotdl_dev
- Compose file path: spotdl_dev/compose.yaml
- Additional env file (optional): spotdl_dev/sample.env
Load spotdl_dev/sample.env into the Environment variables in Dockhand, then create the Stack.