chore(docs+infra): update roadmap, improve home server plan, and archive outdated reports
- Adjusted infrastructure roadmap to use VM instead of nested LXC for Docker hosting, enhancing isolation and compatibility. - Clarified multi-architecture CI/CD setup with native ARM64 builds and QEMU-based x86_64 builds. - Updated documentation to include backup and offline-first strategies. - Archived outdated session logs and reports for better file organization.
This commit is contained in:
parent
c8d19f7911
commit
c51773a4c7
|
|
@ -67,13 +67,16 @@ Wir validieren die gesamte Architektur-Kette (Frontend -> Gateway -> Service ->
|
|||
2. **System Hardening:** Keycloak Production-Config (kein `start-dev`).
|
||||
3. **Reporting / Printing:** (Vorgemerkt)
|
||||
* Anforderung: PDF-Generierung für Startlisten, Ergebnislisten, Dressur-Protokolle (personalisiert).
|
||||
* Architektur-Entscheidung ausstehend: Dezentral (pro Service) vs. Zentraler Reporting-Service.
|
||||
* Architektur-Entscheidung: Dezentraler Microservice (wegen Resource-Bursts).
|
||||
* Technologie-Evaluierung: JasperReports, Thymeleaf + Flying Saucer, etc.
|
||||
4. **Infrastructure Setup (Home-Server):**
|
||||
* Hardware: Minisforum MS-R1 (ARM64).
|
||||
* OS: Debian 12 (Bookworm).
|
||||
* Hypervisor: **Incus** (LXC/LXD Fork) für Container & VMs.
|
||||
* Services:
|
||||
* `infra-gitea` (LXC): Gitea + Actions Runner (ARM64 Native Builds).
|
||||
* `docker-host-prod` (LXC, nesting=true): Docker Host für Meldestelle-Stack.
|
||||
* Networking: Cloudflare Tunnel (kein Port-Forwarding).
|
||||
* Hardware: Minisforum MS-R1 (ARM64, 12 Cores, 10G LAN).
|
||||
* OS: Debian 12 (Vendor Variant) als Host.
|
||||
* Hypervisor: **Incus** (LXC/LXD Fork).
|
||||
* Virtualization Strategy:
|
||||
* `infra-gitea` (LXC Container): Gitea + Actions Runner (Native ARM Builds).
|
||||
* `docker-host-prod` (VM): Debian VM als Docker Host für den Meldestelle-Stack (Isolation, keine Nesting-Probleme).
|
||||
* CI/CD: **Multi-Arch Support** (Native ARM64 Builds + x86_64 via `docker buildx` & QEMU).
|
||||
* Networking: Cloudflare Tunnel (Remote Access).
|
||||
* Local Discovery: DNS/mDNS Strategie für Offline-Szenarien (Main-App als lokaler Anchor).
|
||||
* Backup: Automatisierte Snapshots auf externe USB-SSD.
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ Wir haben heute die technische Basis des Frontends massiv stabilisiert und das "
|
|||
|
||||
Als **Documentation & Knowledge Curator** habe ich die Erkenntnisse der heutigen Session gesichert:
|
||||
|
||||
1. **Neues Dokument:** [`docs/06_Frontend/feature-implementation-guide.md`](../06_Frontend/feature-implementation-guide.md)
|
||||
1. **Neues Dokument:** [`docs/06_Frontend/feature-implementation-guide.md`](../../06_Frontend/feature-implementation-guide.md)
|
||||
* Dient als "Blaupause" für alle zukünftigen Features.
|
||||
* Beschreibt exakt, wie man den `AuthenticatedHttpClient` einbindet und die Koin-Module strukturiert.
|
||||
* Dokumentiert den Web-Worker-Copy-Prozess für SQLDelight.
|
||||
|
|
@ -4,37 +4,47 @@
|
|||
**Teilnehmer:** User (Owner), Lead Architect, DevOps Engineer
|
||||
|
||||
## 1. Zusammenfassung
|
||||
In dieser Session wurde die zukünftige Infrastruktur für den Home-Server (Minisforum MS-R1) geplant und eine Anforderung für das Reporting-System (PDF-Generierung) aufgenommen.
|
||||
In dieser Session wurde die zukünftige Infrastruktur für den Home-Server (Minisforum MS-R1) detailliert geplant und korrigiert. Zudem wurden Anforderungen für Reporting und Offline-Fähigkeit präzisiert.
|
||||
|
||||
## 2. Reporting / Printing (Vorgemerkt)
|
||||
Der User benötigt eine Lösung zum Generieren von personalisierten PDFs (Startlisten, Ergebnislisten, Protokolle).
|
||||
* **Status:** Als "Next Step" in die Roadmap aufgenommen.
|
||||
* **Offene Fragen:** Architektur (Zentral vs. Dezentral), Technologie-Stack.
|
||||
* **Architektur:** Dezentraler Microservice (um Resource-Bursts vom Core-System fernzuhalten).
|
||||
* **Aktion:** Wurde in `MASTER_ROADMAP_2026_Q1.md` dokumentiert.
|
||||
|
||||
## 3. Infrastructure Setup (Minisforum MS-R1)
|
||||
Der User hat neue Hardware bestellt (ARM64 Architektur).
|
||||
|
||||
**Hardware Specs:**
|
||||
* Model: Minisforum MS-R1
|
||||
* CPU: 12 Kerne ARM (CP8180)
|
||||
* RAM: bis 64GB LPDDR5
|
||||
* Network: 2x 10G LAN
|
||||
* Storage: NVMe + USB-SSD (Backup)
|
||||
|
||||
**Entscheidung: "The Incus Way"**
|
||||
Da Proxmox auf ARM experimentell ist, wurde folgender Stack beschlossen:
|
||||
1. **Base OS:** Debian 12 (Bookworm).
|
||||
**Software Stack (Final Decision):**
|
||||
1. **Base OS:** Debian 12 (Vendor Variant, vorinstalliert/angepasst für Treiber).
|
||||
2. **Hypervisor:** **Incus** (Community Fork von LXD).
|
||||
3. **Container-Strategie:**
|
||||
* `infra-gitea` (LXC): Gitea + Actions Runner (Native ARM Builds).
|
||||
* `docker-host-prod` (LXC mit nesting): Docker Host für den Meldestelle-Stack.
|
||||
4. **Networking:** Cloudflare Tunnel.
|
||||
3. **Virtualization Strategy:**
|
||||
* `infra-gitea` (LXC Container): Gitea + Actions Runner.
|
||||
* *Vorteil:* Leichtgewichtig, Native ARM Builds via Runner.
|
||||
* `docker-host-prod` (**VM**): Debian VM als Docker Host.
|
||||
* *Grund:* Bessere Isolation, Kernel-Unabhängigkeit vom Host, keine "Nesting"-Probleme (OverlayFS/ZFS).
|
||||
4. **CI/CD & Build Strategy:**
|
||||
* **Tool:** `docker buildx` auf dem Gitea Runner.
|
||||
* **ARM64 Images:** Werden **nativ** gebaut (rasend schnell, da Host = ARM).
|
||||
* **x86_64 Images:** Werden via **QEMU-Emulation** gebaut (langsamer, aber funktional).
|
||||
|
||||
**Vorteile:**
|
||||
* Native Performance auf ARM.
|
||||
* Snapshots & Backups (via ZFS/Btrfs).
|
||||
* Saubere Trennung von Infrastruktur (Gitea) und Applikation (Docker).
|
||||
## 4. Networking & Offline-First
|
||||
* **Remote Access:** Cloudflare Tunnel.
|
||||
* **Local LAN (Offline):**
|
||||
* Die "Main-Native-Desktop-App" (Meldestelle) fungiert als lokaler Anchor/Server im LAN.
|
||||
* Clients (Zeitnehmer) verbinden sich via LAN.
|
||||
* **Discovery:** Lokale DNS-Strategie oder Service Discovery (mDNS) notwendig, damit Clients den Server auch ohne Internet finden.
|
||||
|
||||
## 4. Nächste Schritte
|
||||
## 5. Backup
|
||||
* **Strategie:** Automatisierte Snapshots/Backups auf externe **USB-SSD**.
|
||||
* **Motto:** "Kein Backup, kein Mitleid."
|
||||
|
||||
## 6. Nächste Schritte
|
||||
* Warten auf Hardware-Lieferung.
|
||||
* Installation & Setup gemäß Plan.
|
||||
* Einrichtung der CI/CD Pipeline (Gitea Actions) für ARM-Builds.
|
||||
* Installation & Setup gemäß korrigiertem Plan (VM statt LXC für Docker).
|
||||
* Vorbereitung der CI/CD Pipelines auf Multi-Architektur (Buildx/QEMU).
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ pluginManagement {
|
|||
|
||||
plugins {
|
||||
// Settings plugins cannot easily use version catalogs because the catalog is loaded
|
||||
// as part of the settings evaluation. We must hardcode the version here.
|
||||
// as part of the settings evaluation. We must hard-code the version here.
|
||||
id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0"
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user