Seit gut drei Jahren betreibe ich einen RaspberryPi als Homeserver. Zunächst reichte dieser noch gut aus. Mit der Zeit wurde aber nicht nur die Zahl der Anwendungen, die auf dem Raspberry laufen, mehr, sondern auch die Leistungsanforderungen der Anwendungen selbst. Besonders meine ich damit die Influx Datenbank, die seit über drei Jahren jede Minuten um einen Datensatz der PV-Anlage größer wird. Die Datenbank braucht mittlerweile über 10 Minuten zum Starten. Auch diese Webseite braucht zum Laden deutlich länger, als sie sollte. Wenn ich den Raspberry komplett neu starte, braucht es ca. eine Stunde, bis alle Anwendungen wieder laufen. Das ist definitiv zu viel. Es sollte also ein neuer Rechner her. In dieser Artikelserie möchte ich davon berichten.


Übersicht aller Artikel dieser Serie


Was ist Jellyfin?

Jellyfin ist eine Streamingsoftware für den eigenen Server. Mit Jellyfin lassen sich Filme und Musik, die auf der Festplatte des Servers liegen, bequem im eigenen Netzwerk streamen. Es erkennt auch automatisch die Medien und fügt Informationen wie Cover, Erscheinungsjahr oder FSK-Freigabe hinzu. Kennt das Endgerät das Format der Medien nicht, konvertiert Jellyfin diese in Echtzeit um.

Einbinden einer NFS Freigabe von Openmediavault

Wer Teil 3 dieser Serie gelesen hat, weiß, dass ich meine Festplatten mit Openmediavault verwalte. Für Jellyfin habe ich dazu eine NFS Freigabe konfiguriert. Diese binde ich nun in mein Ubuntu ein.

Zuerst muss der NFS Client installiert werden:

Anschließend erstellen wir den Mountpoint, also die Stelle im Dateisystem, an dem später das Laufwerk eingehängt werden soll.

Mit dem folgenden Befehl lassen sich alle NFS Freigaben eines Rechners anzeigen. So sieht man, welchen Pfad diese haben.

Jetzt können wir die Freigabe einmal testweise manuell einhängen:

Nachdem ich getestet habe, ob das Einhängen funktioniert hat, hänge ich die Freigabe wieder aus:

Um die Freigabe bei Systemstart automatisch einzuhängen, braucht es einen Eintrag in der Datei /etc/fstab.

Dieser Eintrag sieht bei mir so aus:

Nach dem Speichern mit Strg+O und Schließen mit Strg+X kannst du zum Testen entweder den Server neu starten oder nur mit folgendem Befehl alle Einträge in der fstab einhängen:

Installation von Jellyfin

Ich installiere Jellyfin als Docker-Container. Also lege ich in Portainer einen neuen Container mit dem Namen „Jellyfin“ an und wähle das Image „jellyfin/jellyfin:latest“

Installation von Jellyfin in Docker

Im nächsten Schritt lege ich 3 Volumes an. Das letzte Volume ist der Mountpoint der Festplatte, auf der die Medien liegen.

Installation von Jellyfin in Docker

Im Menü „Network“ wähle ich abschließend noch „Host“ als Netzwerk aus.

Installation von Jellyfin in Docker

Jetzt kann der Container erstellt werden. Die Weboberfläche von Jellyfin ist jetzt unter http://IP_DES_SERVERS:8096 erreichbar.

Einrichtung von Jellyfin

Unter dieser Adresse erreicht man direkt den Einrichtungsassistenten von Jellyfin. Als Sprache wähle ich Deutsch:

Einrichtungsassistent von Jellyfin

Anschließend muss man einen Benutzernamen und ein Passwort für das Admin-Konto festlegen:

Benutzer anlegen

Im nächsten Schritt werden die Medienbibliotheken hinzugefügt. Ich erstelle zu Demonstrationszwecken eine Medienbibliothek für Musik.

Bibliothek einrichten

Als Typ des Inhalts wähle ich also Musik. Auch der Anzeigename bleibt bei „Musik“. Als Verzeichnisse müssen die Verzeichnisse ausgewählt werden, in denen die Musikdateien liegen. In meinem Beispiel oben habe ich meine Festplatte mit Medien in /media/HDD1 gemountet. Im Screenshot unten ist das aber nicht so, da es sich dabei nur um eine Testinstallation handelt. Als Sprache und Land wähle ich Deutsch/Deutschland und aktivieren anschließend die Echtzeitüberwachung. Das ist praktisch, da mit diesem Feature automatisch die Medien hinzugefügt werden, die man ins Medienverzeichnis kopiert.

Erstellen einer Bibliothek

Bei den Diensten aktiviere ich grundsätzlich alle. Sowohl für Bildquellen, als auch für Metadaten.

Erstellen einer Bibliothek
Erstellen einer Bibliothek
Erstellen einer Bibliothek

Anschließend könnte man noch weitere Bibliotheken, z. B. für Filme oder Serien einrichten. Das funktioniert sehr ähnlich. Ich belasse es jetzt aber bei meiner Musikbibliothek und klicke auf „Nächstes“.

fertig eingerichtete Bibliothek in Jellyfin

Dort muss ich nochmal (wie oft habe ich jetzt schon Sprache und Land angegeben? 😅) Sprache und Land angeben, dieses Mal für die Metadaten. Im Abschnitt „Fernzugriff konfigurieren“ belasse ich alles auf Standardeinstellungen.

Konfiguration der Metadaten-Sprache
Fernzugriff konfigurieren

Sowohl die Benutzer- als auch die Administrationseinstellungen von Jellyfin erreicht man im Ausklappmenü link. Dort könnte man zum Beispiel die Bibliotheken bearbeiten.

Einstellung von Jellyfin