ed55b88ec149f9bf41833ebae9c37b8947673757
immich_machine_learning haengt seit dem 7.6. unhealthy: der gunicorn-Worker bleibt nach "Control socket listening" in futex_do_wait stehen und erreicht nie "Application startup complete" (/ping -> ConnectTimeout/ReadTimeout). Kein OOM (22 GB frei), kein Disk-I/O-Wait, laeuft als root, Socket wird erstellt - klassischer Fork-Deadlock von mimalloc (LD_PRELOAD) im geforkten Worker unter gunicorn 25.1.0. mimalloc per LD_PRELOAD="" deaktiviert. Reine Allocator-Optimierung, funktional unkritisch, reversibel. Bekannte Upstream-Regression seit Immich 2.6 (immich#27228, #22317) ohne offiziellen Fix; Restart und force-recreate sind dort als wirkungslos dokumentiert. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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:
HOMELAB_ARCHITECTURE_MASTER_V2.mddocs/WORKFLOW.mddocs/README.md
Bei Restore-, Host-Ausfall- oder Wiederanlauf-Fragen zusaetzlich:
docs/DISASTER_RECOVERY.mddocs/RESTORE_MATRIX.mddocs/SERVICES_RECOVERY.md
Bei Hardware-, Netzwerk-, Provider- oder Kapazitaetsfragen zusaetzlich:
docs/HARDWARE_INVENTORY.mddocs/NETWORK_INVENTORY.mddocs/EXTERNAL_DEPENDENCIES.mddocs/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 Diensteinfra/-> Datenbanken und technische Servicesapps/-> Anwendungenops/-> operative Toolsmonitoring/-> zentraler Observability-Stackhost-services/-> Dienste mit Host-Netztraefik/-> Reverse Proxy Konfigurationdocs/-> Dokumentation und Prozesseenv/-> Beispiel-Umgebungsvariablen
Kurz-Workflow
- In GitHub Desktop
Fetch origin. - Wenn noetig
Pull origin. - Lokal aendern.
- Commit erstellen.
Push origin.- Komodo-Webhook und Ergebnis pruefen.
- 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.mdunddocs/RESTORE_MATRIX.mdbeschrieben. - Recovery-kritische Services-Pfade wie Gitea-Repositories, Komodo-Workspaces und Host-Automation sind in
docs/SERVICES_RECOVERY.mdbeschrieben. - Hardware-, Netzwerk-, Provider- und Capacity-Inventare sind als operative Audit-Dokumente unter
docs/HARDWARE_INVENTORY.md,docs/NETWORK_INVENTORY.md,docs/EXTERNAL_DEPENDENCIES.mdunddocs/CAPACITY_AND_LIFECYCLE.mdvorbereitet. - Der verbindliche Detailablauf steht in
docs/WORKFLOW.md. - Der Doku-Index mit aktiven und archivierten Dokumenten steht in
docs/README.md. nextcloud,bentopdfundmonitoringfolgen dem dokumentierten Netz-/Secret-/Traefik-Modell; der zentrale Monitoring-Stack buendelt Prometheus, Loki, Promtail, Grafana und InfluxDB 3 Core.
Description
Languages
Shell
73.2%
PowerShell
21.5%
Python
3.5%
CSS
1.3%
JavaScript
0.3%
Other
0.2%