Homelab-Besitzer kennen das Problem nur allzu gut: Netzwerke wachsen ständig, es gibt eine Fülle von Services, und das Merken sämtlicher IP-Adressen, Ports und DNS-Records wird nahezu unmöglich. Daher steigt der Bedarf an einem gut strukturierten Dashboard stetig an. Eine beliebte Lösung für dieses Szenario ist das Open-Source-Dashboard Homer.
Es handelt sich hier um ein vollständig statisches HTML/JS-Dashboard, das auf einer einfachen YAML-Konfigurationsdatei basiert. Es ermöglicht die Strukturierung aller Bookmarks in Kategorien, die individuell mit Logos versehen werden können. Dabei steht eine breite Palette an Icons zur Auswahl. Das Design ist sowohl im Dark- als auch im Light-Mode verfügbar.
Allerdings ist es möglich, das Aussehen individuell an die eigenen Bedürfnisse anzupassen. Eine Suchfunktion steht ebenfalls zur Verfügung und kann sowohl über den Suchschlitz als auch durch Tastatur-Shortcuts aufgerufen werden. Darüber hinaus besteht die Möglichkeit, zusätzliche Seiten zu erstellen. Doch welche Funktionen bietet Homer noch? Im Folgenden erfährst du es.
Was zeichnet Homer aus?
Homer ist äußerst anpassbar und lässt sich mit einer einzigen YAML-Konfigurationsdatei konfigurieren. Du kannst problemlos die Anzahl der Spalten ändern, benutzerdefinierte Icons oder Logos hochladen, weitere Abschnitte hinzufügen, zwischen dem dunklen und hellen Design wechseln, Hintergrundbilder hinzufügen und vieles mehr nach deinen Wünschen anpassen.
Im Gegensatz zu anderen Dashboards fehlt hier eine Benutzeroberfläche für Anpassungsaufgaben. Stattdessen müssen alle Konfigurationsarbeiten direkt in der Konsole durchgeführt werden. Das mag für erfahrene Linux-Nutzer kein Problem sein, stellt jedoch definitiv einen Minuspunkt dar, nicht zuletzt da YAML-Code sehr empfindlich auf falsche Einrückungen reagiert.
Das bloße Anzeigen von Bookmarks wäre für die Entwickler des Homer Dashboards zu langweilig gewesen. Daher gibt es nicht nur die Möglichkeit, kurze Beschreibungen anzulegen, sondern auch viele gängige Anwendungen mit zusätzlichen Statistiken in der Anzeige zu integrieren. Derzeit stehen mehr als 25 solcher unterstützten Apps zur Verfügung.
Obwohl Homer damit nicht der Spitzenreiter am Markt ist, werden doch die wichtigsten Services unterstützt:
- PiHole
- OpenWeatherMap
- Medusa
- Lidarr, Prowlarr, Sonarr and Radarr
- PaperlessNG
- Ping
- Prometheus
- AdGuard Home
- Portainer
- Emby / Jellyfin
- Uptime Kuma
- Tautulli
- Mealie
- Proxmox
- rTorrent
- qBittorrent
- CopyToClipboard
- Speedtest Tracker
- What’s Up Docker
- SABnzbd
- OctoPrint
- Tdarr
- PiAlert
- Immich
Wie wird Homer deployt?
Das Homer Dashboard kann auf unterschiedliche Arten in Betrieb genommen werden. Eine Möglichkeit besteht darin, das neueste Release herunterzuladen, zu entpacken und in das Root-Verzeichnis eines Webservers zu verschieben. Für Kubernetes besteht außerdem die Option, es mithilfe von Helm zu installieren. Am gebräuchlichsten ist jedoch die Bereitstellung mittels Docker Compose:
# Bind-Mount erstellen:
mkdir -v $HOME/homer
# Docker-Compose Code:
---
version: "2"
services:
homer:
image: b4bz/homer
container_name: homer
volumes:
- <Home-Verzeichnis>/homer:/www/assets
ports:
- 8080:8080
user: 1000:1000 # Muss deiner USER- & Gruppen-ID entsprechen
environment:
- INIT_ASSETS=1 # YAML-Konfigurationsdatei mit Beispielen anlegen.
Achte darauf, dass die Angabe der Benutzer- und Gruppen-ID korrekt ist. Der erste vorhandene Benutzer auf einem Linux-System hat standardmäßig die ID 1000. Du kannst dies aber zur Sicherheit noch mit dem folgenden Befehl überprüfen:
id $USER
Im Abschnitt Volumes musst du obendrein noch das korrekte Verzeichnis für den Bind-Mount eintragen. Wenn du der Anleitung weiter oben gefolgt bist, handelt es sich hierbei um deinen Home-Ordner. Den passenden Pfad kannst du ganz einfach durch dieses Kommando herausfinden:
echo $HOME
Nun, da wir das Docker-Compose-File erstellt und ein Datenverzeichnis eingerichtet haben, ist es an der Zeit, den Container zu starten. Hierfür genügt der Befehl docker-compose up -d. Durch die Ausführung dieses Kommandos wird die Docker-Compose-Datei eingelesen, und der Container wird gestartet. Du solltest jetzt auf Homer zugreifen können, indem du http://<deine-ip>:8080/ aufrufst.
Natürlich sind bislang noch keine Links zu deinen Diensten vorhanden. Du kannst sie in der YAML-Konfigurationsdatei unter $HOME/homer/config/assets/config.yml hinzufügen. Falls dir das Standard-Theme von Homer nicht zusagt und du nicht jeden Aspekt von CSS selbst anpassen möchtest, gibt es eine Lösung: die Installation von vorgefertigten Theme-Paketen. Hier gibt es welche zur Auswahl.