# Homelab Infrastructure (KalliLab CORE) Dieses Repository ist die zentrale Quelle ("Single Source of Truth") fuer die komplette Infrastruktur meines Homelabs. ## WICHTIG - Einstieg Vor jeder Aenderung lesen: 1. `HOMELAB_ARCHITECTURE_MASTER_V2.md` 2. `docs/WORKFLOW.md` Bei Restore-, Host-Ausfall- oder Wiederanlauf-Fragen zusaetzlich: 3. `docs/DISASTER_RECOVERY.md` 4. `docs/RESTORE_MATRIX.md` ## Architektur - Host: Unraid - Container: Docker Compose - Reverse Proxy: Traefik v3 (Service-Routing via Docker-Labels, File-Provider nur fuer zentrale Dynamic-Config) - Zugriff: Tailscale (VPN) - DNS: AdGuard Home + Unbound - GitOps: Gitea + Komodo ## Grundprinzipien - Gitea Online ist der operative Sollzustand. - Der lokale Clone ist die Arbeitskopie. - Komodo deployed automatisch aus Gitea und ist kein Bearbeitungsort. - Keine produktiven Container ausserhalb von Compose. - Traefik ist der einzige oeffentliche Einstiegspunkt. - Secrets werden niemals im Repository gespeichert. ## Repository-Struktur - `core/` -> Basisdienste (Gitea) - `security/` -> sicherheitskritische Dienste - `infra/` -> Datenbanken und technische Services - `apps/` -> Anwendungen - `ops/` -> Monitoring und Tools - `host-services/` -> Dienste mit Host-Netz - `traefik/` -> Reverse Proxy Konfiguration - `docs/` -> Dokumentation und Prozesse - `env/` -> Beispiel-Umgebungsvariablen ## Kurz-Workflow 1. In GitHub Desktop `Fetch origin`. 2. Wenn noetig `Pull origin`. 3. Lokal aendern. 4. Commit erstellen. 5. `Push origin`. 6. Komodo-Webhook und Ergebnis pruefen. 7. Doku bei Bedarf aktualisieren. ## Status - Komodo ist der primaere und einzige produktive Stack-Manager. - Komodo bleibt bewusst bei nativer Authentifizierung; zentrale Traefik-Auth wird dort nicht pauschal vorgeschaltet. - Portainer CE ist abgeschaltet und kein Teil des aktiven Betriebs mehr. - Glance ist das aktive produktive Homelab-Dashboard. - Traefik `dynamic/` bleibt eine dokumentierte manuelle Host-Sync-Ausnahme ausserhalb des normalen Komodo-Deployments. - Mutable Image-Tags sind auf die aktuell laufenden Digests eingefroren; echte Versions-Upgrades erfolgen bewusst separat. - Disaster-Recovery und dienstspezifische Restore-Quellen sind in `docs/DISASTER_RECOVERY.md` und `docs/RESTORE_MATRIX.md` beschrieben. - Der verbindliche Detailablauf steht in `docs/WORKFLOW.md`. - `nextcloud`, `bentopdf` und `monitoring` folgen dem dokumentierten Netz-/Secret-/Traefik-Modell; der zentrale Monitoring-Stack buendelt Prometheus, Loki, Promtail, Grafana und InfluxDB 3 Core.