Spotify: Nützliche Tools 😉
Spotify Playlists einfach auf dem NAS speichern und offline hören mit SpotTube und Docker
Durch einen Zufall bin ich über dieses Projekt gestolpert. Dieser Beitrag führt Schritt für Schritt durch die Installation und Konfiguration von SpotTube auf einer DiskStation oder einem Ugreen NAS zu akademischen Zwecken.
Voraussetzungen
Bevor mit der Installation von SpotTube begonnen werden kann, muss sichergestellt sein, dass der Container Manager auf der DiskStation oder Ugreen NAS installiert ist. Dies ist über das Paketzentrum der jeweiligen NAS-Oberfläche zu überprüfen. Dazu wird das Paketzentrum geöffnet und im Suchfeld nach "Container" gesucht. Ist der Container Manager bereits installiert, wird dies angezeigt. Andernfalls muss dieser zunächst installiert werden.
Ordnerstruktur anlegen
Für den Betrieb von SpotTube und die Speicherung der heruntergeladenen Musikdateien ist es notwendig, eine entsprechende Ordnerstruktur auf dem NAS anzulegen. Zunächst wird über die File Station (oder den Dateimanager bei Ugreen NAS) der Docker-Ordner aufgerufen. Dieser Ordner wird bei der Installation des Container Managers automatisch erstellt. Innerhalb des Docker-Ordners wird ein neuer Ordner mit dem Namen spottube
erstellt. In diesem spottube
-Ordner wird wiederum ein weiterer Ordner namens config
angelegt. Dieser Ordner dient SpotTube zur Speicherung der Konfigurationsdateien.
Zusätzlich zu diesen Ordnern innerhalb des Docker-Verzeichnisses wird ein separater Ordner für die Musikdateien benötigt. Hierzu kann ein beliebiger freigegebener Ordner auf dem NAS verwendet werden. Im vorliegenden Beispiel wird ein neuer freigegebener Ordner namens Music
im Hauptverzeichnis des NAS erstellt. Innerhalb dieses Music
-Ordners wird anschließend ein weiterer Ordner mit dem Namen spottube
angelegt. Dieser spottube
-Ordner im Music
-Verzeichnis dient als Zielordner für die heruntergeladenen MP3-Dateien. Es ist zu beachten, dass der Zielordner frei wählbar ist und später in der Docker Compose Datei entsprechend angepasst werden kann.
Docker Compose konfigurieren
Nachdem die Ordnerstruktur angelegt wurde, wird der Container Manager geöffnet und ein neues Projekt erstellt. Dazu wird im Container Manager auf "Projekt" und anschließend auf "Erstellen" geklickt. Als Projektnamen wird spottube
vergeben. Als Pfad wird der zuvor erstellte spottube
-Ordner im Docker-Verzeichnis ausgewählt. Als Quelle für die Konfiguration wird "Docker Compose erstellen" gewählt.
Im nächsten Schritt wird die Docker Compose Datei benötigt. Diese Datei wird kopiert und in das Textfeld im Container Manager eingefügt.
Die Docker Compose Datei beinhaltet folgende Konfiguration:
version: '3.8'
services:
spottube:
image: thewicklowwolf/spottube:latest
container_name: spottube
environment:
- PUID=1000
- PGID=1000
- spotify_client_id=abc
- spotify_client_secret=123
- thread_limit=1
- artist_track_selection=all
volumes:
- /path/to/config:/spottube/config
- /data/media/spottube:/spottube/downloads
- /etc/localtime:/etc/localtime:ro
ports:
- 5000:5000
restart: unless-stopped
https://hub.docker.com/r/thewicklowwolf/spottube
Es ist wichtig, die Platzhalter für PUID
und PGID
mit den korrekten User- und Group-IDs des eigenen NAS-Systems zu ersetzen. Die Standard User ID auf Synology Systemen ist 1026
und die Standard Group ID ist 100
. Auf Ugreen NAS-Systemen sind die Standard IDs 1000
für den User und 100
für die Group. Die korrekten IDs können über die Kommandozeile des NAS mit dem Befehl id <username>
ermittelt werden. Der Pfad unter volumes
für /volume1/music/spottube
muss gegebenenfalls an den tatsächlichen Pfad des zuvor erstellten Musikordners angepasst werden, falls dieser abweicht. Die Felder SPOTIFY_CLIENT_ID
und SPOTIFY_CLIENT_SECRET
sind optional und können leer gelassen werden. SpotTube funktioniert auch ohne diese Angaben.

Nachdem die Docker Compose Datei eingefügt und die Anpassungen vorgenommen wurden, wird auf "Weiter" geklickt. Die Option "Webportal über Web Station einrichten" kann übersprungen werden. Durch Klick auf "Fertig" wird das Projekt erstellt und gestartet.
SpotTube starten und aufrufen
Der Container Manager beginnt nun mit dem Herunterladen des SpotTube Docker Images und der Erstellung des Containers. Sobald der Vorgang abgeschlossen ist und der Exit-Code 0
angezeigt wird, ist SpotTube erfolgreich gestartet. Der Container-Status sollte nun als "Wird ausgeführt" angezeigt werden.
Um auf die SpotTube Web-Oberfläche zuzugreifen, wird ein Webbrowser geöffnet und die IP-Adresse der DiskStation oder Ugreen NAS in die Adresszeile eingegeben, gefolgt vom Port 5010
. Beispiel: http://<IP-Adresse-der-NAS>:5010
. Daraufhin sollte die SpotTube Oberfläche im Browser erscheinen.

Die Oberfläche ist schlicht gehalten und bietet ein Feld zur Eingabe des Playlist-Links, eine Schaltfläche zum Herunterladen und ein Zahnrad-Symbol für die Einstellungen. In den Einstellungen können optional die Spotify Client ID und das Client Secret hinterlegt sowie der Dark Mode aktiviert werden.
Spotify Playlist herunterladen
Um eine Spotify Playlist herunterzuladen, wird zunächst in Spotify die gewünschte Playlist ausgewählt. Über das Drei-Punkte-Menü der Playlist wird "Teilen" und anschließend "Link zur Playlist kopieren" ausgewählt. Dieser kopierte Link wird nun in das Eingabefeld auf der SpotTube Oberfläche eingefügt. Durch Klick auf "Download" startet der Download-Vorgang.

SpotTube listet nun alle Titel der Playlist auf und beginnt mit dem Herunterladen und Konvertieren der Songs in MP3-Dateien. Der Fortschritt des Downloads wird in der Oberfläche angezeigt. Je nach Größe der Playlist kann der Download-Vorgang einige Zeit in Anspruch nehmen.
Überprüfung der Downloads
Nachdem der Download einer Playlist abgeschlossen ist, können die heruntergeladenen MP3-Dateien über die File Station (oder den Dateimanager) überprüft werden. Dazu wird der zuvor konfigurierte Musikordner aufgerufen. Innerhalb des spottube
-Ordners befindet sich nun ein weiterer Ordner, der den Namen der heruntergeladenen Playlist trägt.

In diesem Ordner sind die einzelnen Songs als MP3-Dateien gespeichert und können direkt angehört werden.
Fazit
SpotTube erweist sich als äußerst nützliches Tool, um seine Playlisten im alten Auto verfügbar zu machen. Nicht jeder hat vielleicht mobiles Internet in seinem Radio.