Zum Inhalt

Architektur-Uebersicht

Gesamtarchitektur des Homelab-Oekosystems mit allen Projekten und ihren Verbindungen.

Projekte

Homeserver (Intel NUC)

Intel NUC mit ~40 Docker-Services. Zentraler Server im Heimnetzwerk (10.10.10.3). Reverse Proxy via Traefik, erreichbar unter *.home.robinwerner.net.

Details: Homeserver

Homelab-External (Hetzner vServer)

Hetzner vServer (CX23) fuer externen Zugang. Betreibt Headscale (VPN-Koordination), Uptime Kuma (Monitoring), ntfy (Push-Notifications) und Healthchecks. Erreichbar unter *.homelab-external.robinwerner.net.

Details: Homelab-External

Claude-Pi (Raspberry Pi 4B)

Headless Dev-Workstation. Verwaltet Shell-Configs, Dev-Tools und Claude Code Einstellungen. Primaere Maschine fuer die Verwaltung aller Repos.

Details: Claude-Pi

Docker-Images (GHCR)

Custom Docker-Images fuer CI/CD-Workflows. Aktuell: MkDocs + LikeC4 Build-Image.

Details: Docker-Images

Novabrands (OVH Dedicated)

Eigenstaendige Infrastruktur fuer eine IT-Beratung. OpenProject, Nextcloud + Collabora, Coder. Keine Netzwerkverbindung zum Homelab.

Details: Novabrands

Verbindungen

Beziehung Mechanismus
Homelab-External ↔ Homeserver Tailscale VPN-Tunnel. Uptime Kuma ueberwacht Heimnetz via Pi-hole DNS. Alertmanager sendet Alerts an ntfy.
Claude-Pi ↔ Homeserver Gleiches LAN (UniFi) + Tailscale VPN. Primaere Management-Maschine.
Docker-Images → Homeserver MkDocs-Image wird in der CI-Pipeline fuer Dokumentations-Build genutzt.
Novabrands Eigenstaendig. Teilt Patterns, aber keine Netzwerkverbindung zum Homelab.

Homeserver — Service-Uebersicht

Dieser Abschnitt bezieht sich ausschliesslich auf den Homeserver (Intel NUC). Vollstaendige Dokumentation: Homeserver

Service Port(s) Projekt
Infrastruktur
Traefik 80 / 443 / 8082 GitHub
Cloudflare DDNS GitHub
Cloudflared GitHub
Pi-hole 53 / 8888 GitHub
Tailscale GitHub
Portainer 9000 GitHub
Media
Jellyfin 8096 GitHub
Sonarr 8989 GitHub
Radarr 7878 GitHub
Prowlarr 9696 GitHub
SABnzbd 9874 GitHub
Gluetun (VPN) GitHub
UmlautAdaptarr 5006 GitHub
Monitoring
Prometheus 9090 GitHub
VictoriaMetrics 8428 GitHub
Grafana 3000 GitHub
VictoriaLogs 9428 GitHub
Alloy 514 (Syslog) GitHub
Alertmanager 9093 GitHub
node-exporter 9100 GitHub
cAdvisor 8080 GitHub
UnPoller 9130 GitHub
Pi-hole Exporter 9617 GitHub
MqDockerUp GitHub
InfluxDB 8086 GitHub
Speedtest Tracker 30222 GitHub
Smart Home
Home Assistant 8123 GitHub
ESPHome 6052 GitHub
Zigbee2MQTT 8080 GitHub
Piper 10200 GitHub
Whisper 10300 GitHub
Produktivitaet
Paperless-NGX 8000 GitHub
Syncthing 8384 / 22000 / 21027 GitHub
Ollama 11434 / 11435 GitHub
Open WebUI 3000 GitHub
Homepage 3000 GitHub
Wallos 80 GitHub
VSCode Server 8443 GitHub
PKV-App 3000 / 3001 GitHub
Sonstiges
TeamSpeak 3 9987 / 10011 / 30033 teamspeak.com
Project Zomboid Server PZ Wiki
Snowflake Proxy GitLab
Borg/Borgmatic GitHub

Architektur-Diagramme

System-Kontext

Container-Uebersicht

Klicke auf eine Kategorie um in die Detail-Ansicht zu navigieren.

Traefik-Routing

Services werden auf zwei Wegen an Traefik angebunden:

  1. Docker-Labels (bevorzugt) — Service definiert seine eigenen Routing-Regeln via Labels in der docker-compose.yaml
  2. File Provider (traefik/dynamic.yaml) — fuer Services die nicht im Docker-Netzwerk sind (z.B. Home Assistant, ESPHome im Host-Modus)

Alle Services sind unter *.home.robinwerner.net erreichbar. SSL-Zertifikate werden automatisch via Let's Encrypt DNS-Challenge (Cloudflare) ausgestellt.

Siehe: Traefik

Storage

SSD (/mnt/ssd/container-data/)

Primaerer Speicherort fuer alle Container-Daten. Jeder Service hat ein eigenes Unterverzeichnis:

/mnt/ssd/container-data/
+-- traefik/              # Certs, LetsEncrypt, Logs
+-- paperless/            # App-Daten, DB, Redis, Consume-Ordner
+-- media-stack/          # Jellyfin, Sonarr, Radarr, Prowlarr, SABnzbd, Gluetun
+-- monitoring-stack/     # Prometheus, Grafana, Alertmanager, Alloy, MqDockerUp
+-- pihole/               # Config, dnsmasq
+-- homeassistant/        # HA Config
+-- ...

NAS (/mnt/unas)

Grosser Speicher fuer Medien-Dateien. Wird von Jellyfin und den *arr-Services als /mnt/storage-box gemountet.

Monitoring NFS (/mnt/monitoring/)

NFS-Mount fuer Langzeit-Monitoring-Daten (VictoriaMetrics 5y, VictoriaLogs 5y).

Paperless NAS (/mnt/paperless/)

Separater NFS-Mount fuer Paperless-Dokumente (Media, Export, Trash).