Zum Inhalt

Jellyfin als eigenen Medienserver mit Docker einrichten

Veröffentlicht am 1. August 2026 · Geschätzte Lesezeit: 4 Minuten

Mit Jellyfin verwaltest und streamst du deine eigenen Filme, Serien, Musik und Fotos im Heimnetz. Der Server liest die Mediendateien aus einem eingebundenen Ordner und stellt sie im Browser oder in Jellyfin-Apps bereit. Für Installation und Ersteinrichtung solltest du etwa 20 bis 30 Minuten einplanen.

Die Befehle wurden am 1. August 2026 mit der offiziellen Jellyfin-Docker-Anleitung abgeglichen. Eine zusätzliche deutschsprachige Ansicht bietet das Video Jellyfin Docker Installation und Einrichtung.

Voraussetzungen

  • Ein Linux-Server mit installiertem Docker und Docker Compose
  • Zugriff auf das Terminal des Servers
  • Ein Ordner mit eigenen, legal verfügbaren Mediendateien
  • Eine feste IP-Adresse oder ein lokaler DNS-Name für den Server

1. Benutzer-ID und Medienordner prüfen

Führe die beiden folgenden Befehle im Terminal des Docker-Servers aus. Die Ausgaben benötigst du später für die Zugriffsrechte des Containers.

id -u
id -g

Notiere die Benutzer-ID und die Gruppen-ID. Prüfe anschließend deinen Medienordner. Ersetze <medien-ordner> durch den vollständigen Pfad zu deinen Filmen oder anderen Medien.

ls -ld <medien-ordner>

Ein möglicher Pfad ist /srv/media. Der angemeldete Benutzer benötigt mindestens Leserechte auf diesen Ordner und seine Dateien.

2. Arbeitsordner anlegen

Erstelle im persönlichen Verzeichnis die Ordner für Konfiguration und Zwischenspeicher:

mkdir -p ~/jellyfin/config ~/jellyfin/cache

Wechsle danach in den neuen Arbeitsordner:

cd ~/jellyfin

3. Compose-Datei erstellen

Öffne eine neue Compose-Datei:

nano compose.yaml

Füge die folgende Konfiguration ein. Ersetze <benutzer-id> und <gruppen-id> durch die zuvor notierten Zahlen. Ersetze <medien-ordner> durch den vollständigen Pfad auf dem Server.

services:
  jellyfin:
    image: jellyfin/jellyfin:latest
    container_name: jellyfin
    user: "<benutzer-id>:<gruppen-id>"
    restart: unless-stopped
    ports:
      - "8096:8096/tcp"
      - "7359:7359/udp"
    volumes:
      - ./config:/config
      - ./cache:/cache
      - <medien-ordner>:/media:ro

Speichere mit Strg+O, bestätige mit der Eingabetaste und beende Nano mit Strg+X.

Der Zusatz :ro bindet deine Medien nur lesbar ein. Jellyfin kann die Originaldateien dadurch nicht versehentlich verändern oder löschen. Port 8096 öffnet die Weboberfläche; UDP-Port 7359 dient der Erkennung im lokalen Netzwerk.

Warning

Verwende unter Linux für <medien-ordner> einen absoluten Pfad. Ein falscher oder nicht lesbarer Pfad führt dazu, dass Jellyfin im Einrichtungsassistenten keine Dateien findet.

4. Container starten

Starte Jellyfin im Hintergrund. Der Befehl wird im Ordner ~/jellyfin ausgeführt.

docker compose up -d

Prüfe anschließend den Zustand:

docker compose ps

In der Spalte STATUS sollte Up stehen. Bei einem Fehler zeigen die letzten Protokollzeilen meist die Ursache:

docker compose logs --tail=100 jellyfin

5. Einrichtungsassistent abschließen

Öffne auf einem Gerät im selben Netzwerk folgende Adresse:

http://<server-ip>:8096

Ersetze <server-ip> durch die IP-Adresse deines Docker-Servers, zum Beispiel 192.168.178.50.

Wähle Deutsch als Sprache und erstelle ein Administratorkonto mit einem starken, einzigartigen Passwort. Lege anschließend eine Medienbibliothek an und wähle im Container den Ordner /media aus. Stelle Sprache und Region der Metadaten passend ein.

Deaktiviere im Netzwerkschritt die automatische Portfreigabe. Sie verwendet UPnP und ist für einen reinen Zugriff im Heimnetz nicht erforderlich.

Danger

Leite Port 8096 nicht ungeschützt im Router ins Internet weiter. Nutze für den Zugriff von unterwegs ein VPN oder einen korrekt abgesicherten Reverse Proxy mit HTTPS.

6. Wiedergabe testen

Warte nach dem Assistenten, bis Jellyfin den Medienordner eingelesen hat. Öffne einen gefundenen Titel und starte die Wiedergabe für mindestens eine Minute.

Falls keine Dateien erscheinen, prüfe zuerst, ob der Container den Ordner sehen kann:

docker compose exec jellyfin ls -la /media

Der Befehl wird im Ordner ~/jellyfin ausgeführt. Werden Dateien angezeigt, kontrolliere in Jellyfin den Bibliothekspfad und starte einen erneuten Scan.

7. Backup und Rückweg vorbereiten

Stoppe Jellyfin vor der Sicherung, damit sich die Konfigurationsdaten während des Kopierens nicht ändern:

cd ~/jellyfin
docker compose down

Sichere Compose-Datei und Konfiguration. Der Cache wird bewusst ausgelassen, weil Jellyfin ihn neu erstellen kann.

tar -czf "$HOME/jellyfin-backup-$(date +%F).tar.gz" -C "$HOME/jellyfin" compose.yaml config

Starte den Dienst danach wieder:

docker compose up -d

Die Mediendateien gehören in eine eigene, regelmäßige Datensicherung. Für den Rückweg stoppst du Jellyfin, stellst compose.yaml und den Ordner config aus dem Archiv wieder her und startest den Container erneut.

8. Jellyfin aktualisieren

Erstelle zuerst ein Backup. Lade danach das aktuelle stabile Container-Abbild:

cd ~/jellyfin
docker compose pull

Ersetze anschließend den Container mit unveränderter Konfiguration:

docker compose up -d

Prüfe nach dem Update Anmeldung, Bibliothek und Wiedergabe. Bei größeren Versionssprüngen solltest du vorher zusätzlich die Veröffentlichungshinweise von Jellyfin lesen.

9. Typische Fehler beheben

Wenn die Weboberfläche nicht erreichbar ist, prüfe, ob Port 8096 bereits belegt ist:

sudo ss -ltnp | grep ':8096'

Bei einem Konflikt änderst du in compose.yaml nur die linke Zahl, zum Beispiel auf "8097:8096/tcp". Die neue Adresse lautet dann http://<server-ip>:8097.

Bei ruckelnder Wiedergabe kann eine Umwandlung des Videos erforderlich sein. Die Hardwarebeschleunigung hängt von Prozessor und Grafikchip ab und sollte erst anhand der passenden offiziellen Jellyfin-Anleitung eingerichtet werden.

Fertig

Jellyfin läuft jetzt als eigener Medienserver und liest deine Originaldateien nur lesbar ein. Die Einrichtung ist erfolgreich, wenn du dich anmelden, einen Titel öffnen und ihn im Heimnetz ohne Abbruch wiedergeben kannst.