Docker: deploy/update.sh sichert, baut, migriert und prueft die Erreichbarkeit; der Worker hat jetzt eine Zustandspruefung. Der ganze Stapel wurde durchgespielt - bauen, starten, migrieren, anmelden, Agent-Skript abrufen. Dabei ein echter Fehler aufgefallen: Nach der Anmeldung zeigte die Weiterleitung auf den internen Containernamen. Hinter einem Reverse Proxy waere das eine tote Adresse gewesen. Weiterleitungen nehmen jetzt die eingetragene Adresse, sonst APP_URL, sonst die Proxy-Kopfzeilen. Dazu Skripte nach Art der Proxmox VE Helper-Scripts (Node und PostgreSQL direkt im LXC, ohne Docker). Vorerst intern: Eine Einreichung setzt oeffentlichen Quelltext voraus und laeuft ueber ProxmoxVED. Ausserdem docs/roadmap.md: Bis 1.0.0 fehlt kein Code mehr, sondern Erprobung. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2.4 KiB
#026 Auslieferung finalisieren
Status: erledigt Meilenstein: v0.17.0 Labels: deployment, doku Geschätzt: 3 h Tatsächlich: 0 h 40 min
Ziel
Zwei saubere Wege, ProxLedger in Betrieb zu nehmen: als Docker-Stack und als LXC-Container nach Art der Proxmox VE Helper-Scripts.
Aufgaben
deploy/update.sh: sichern, bauen, migrieren, neu starten, Erreichbarkeit prüfen- Zustandsprüfung für den Worker in
docker-compose.yml AUFRAEUM_CRONin.env.exampleund im Compose-Dienstdeploy/community-scripts/ct/proxledger.shundinstall/proxledger-install.shdeploy/community-scripts/README.mdmit Voraussetzungen für eine Einreichung- README auf den tatsächlichen Stand gebracht (Feldtest erledigt, Einstellungen, Sicherheit)
docs/roadmap.md- Docker-Stapel vollständig durchgespielt: bauen, starten, migrieren, anmelden, Agent-Skript abrufen
Erkenntnisse zu community-scripts
- Die Skripte laden ihr Gerüst inzwischen aus einem eigenen Repository
(
community-scripts/core, Dateicore/build.func) – nicht mehr ausmisc/build.func. - Neue Skripte gehören als Pull Request nach ProxmoxVED, nicht nach ProxmoxVE. Direkt eingereichte Skripte werden dort ohne Prüfung geschlossen.
- Die JSON-Metadaten für die Webseite liegen nicht mehr im Skript-Repository.
- Eine Einreichung setzt öffentlich erreichbaren Quelltext voraus (in aller Regel GitHub). Solange
ProxLedger im eigenen Gitea liegt, bleiben die Skripte intern; die Quelle lässt sich über
PROXLEDGER_REPOsetzen.
Beim Prüfen gefunden
Der Docker-Stapel wurde vollständig gestartet (bauen, migrieren, anmelden). Dabei zeigte sich: Nach der
Anmeldung wies die Weiterleitung auf http://<container-id>:3000 – die interne Adresse des
Containers. Im Browser hinter einem Reverse Proxy wäre das eine tote Adresse gewesen. Weiterleitungen
nehmen jetzt die eingetragene Adresse, sonst APP_URL, sonst die Kopfzeilen des Reverse Proxy
(src/lib/adresse.ts, vier Tests). Im Stapel gegengeprüft: location: http://localhost:3001/.
Entscheidung
Der eigene deploy/lxc-installer.sh (Container mit Docker darin) bleibt erhalten. Der neue Weg
installiert Node und PostgreSQL direkt in den Container – das ist schlanker und entspricht dem, was
Proxmox-Betreiber von Helper-Scripts erwarten. Beide Wege stehen gleichberechtigt im README.