- App-Image wird jetzt aus Gitea-Container-Registry gepullt
(git.kgva.ch/karim/rapport-app:main) — kein lokaler Build mehr noetig.
build:-Section bleibt fuer Dev-Workflow.
- DB-Port nur noch auf 127.0.0.1 gebunden — kein direkter LAN-Zugriff
zur Postgres mehr (Kong-Proxy ist der einzige Weg).
- DB-Healthcheck: start_period 30s + 20 retries — Migrations + Schema-Init
brauchen beim Erst-Start laenger als 50s.
- Realtime: DB_AFTER_CONNECT_QUERY zeigt jetzt auf 'realtime' (ohne Underscore).
- App-Image-HEALTHCHECK: wget http://127.0.0.1/ statt localhost (IPv6-Fall).
- Init-Setup: zz-rapport-post-init.sh statt 00-init.sh, plus
rapport-migrations als separater Mount unter /rapport-migrations.
Komplettes Bundle für eigene Rapport-Instanz:
- Postgres mit Supabase-Extensions + Init-Script für Standard-Rollen
- GoTrue (Auth) mit konfigurierbarem SMTP für Passwort-Reset-Mails
- PostgREST (REST-API)
- Realtime (Postgres-Changes für Live-Sync)
- Storage-API (Bilder/Quittungen)
- Kong als API-Gateway
- Rapport-Frontend als Multi-Stage-Build (zieht Sources aus dem App-Repo)
Plus:
- scripts/sync-migrations.sh: holt SQL aus dem App-Repo
- .env.example mit allen Pflicht-Secrets + optionalen SMTP-Werten
- nginx.conf mit SPA-Routing
- README mit Setup-Anleitung (Linux + macOS-Colima)
- LICENSE (AGPL-3.0)
Sync mit App-Repo: scripts/sync-migrations.sh holt die Migrations-SQL via
git clone und legt sie nach volumes/db/init/migrations/. Bei jedem
Rapport-Update erneut ausführen.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>