81 lines
3.2 KiB
Markdown
81 lines
3.2 KiB
Markdown
# 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`
|
|
3. `docs/README.md`
|
|
|
|
Bei Restore-, Host-Ausfall- oder Wiederanlauf-Fragen zusaetzlich:
|
|
|
|
4. `docs/DISASTER_RECOVERY.md`
|
|
5. `docs/RESTORE_MATRIX.md`
|
|
6. `docs/SERVICES_RECOVERY.md`
|
|
|
|
Bei Hardware-, Netzwerk-, Provider- oder Kapazitaetsfragen zusaetzlich:
|
|
|
|
7. `docs/HARDWARE_INVENTORY.md`
|
|
8. `docs/NETWORK_INVENTORY.md`
|
|
9. `docs/EXTERNAL_DEPENDENCIES.md`
|
|
10. `docs/CAPACITY_AND_LIFECYCLE.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/` -> operative Tools
|
|
- `monitoring/` -> zentraler Observability-Stack
|
|
- `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.
|
|
- Recovery-kritische Services-Pfade wie Gitea-Repositories, Komodo-Workspaces und Host-Automation sind in `docs/SERVICES_RECOVERY.md` beschrieben.
|
|
- Hardware-, Netzwerk-, Provider- und Capacity-Inventare sind als operative Audit-Dokumente unter `docs/HARDWARE_INVENTORY.md`, `docs/NETWORK_INVENTORY.md`, `docs/EXTERNAL_DEPENDENCIES.md` und `docs/CAPACITY_AND_LIFECYCLE.md` vorbereitet.
|
|
- Der verbindliche Detailablauf steht in `docs/WORKFLOW.md`.
|
|
- Der Doku-Index mit aktiven und archivierten Dokumenten steht in `docs/README.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.
|