Realtime-Attack-Map
SURICATA / LIVE FEED

Spotify: Nรผtzliche Tools ๐Ÿ˜‰

Spotify Playlists einfach auf dem NAS speichern und offline hรถren mit SpotTube und Docker

Spotify: Nรผtzliche Tools ๐Ÿ˜‰
Photo by Alexander Shatov / Unsplash

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.