feat(worker): Worker mit pg-boss, Vorgaenge und Docker-Betrieb (#007)
Die Oberflaeche legt einen Vorgang an und schickt nur dessen ID in die Warteschlange; der Worker fuehrt ihn aus und haelt Status, Ergebnis oder Fehler fest. So bleiben lange SSH-Vorgaenge aus dem Webprozess heraus, und der Fortschritt ist ohne Job-Interna sichtbar. Kein automatisches Wiederholen: ein halb ausgefuehrter Schreibvorgang auf einem Host gehoert vor einen Menschen. Fehlertexte aus fremden Bibliotheken erreichen die Oberflaeche nie. Dockerfile und Compose fuer den Betrieb: Master-Key als Secret nur im Worker, Datenbank in einem internen Netz. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -2,6 +2,9 @@
|
||||
# Alle eigenen Variablen tragen das Praefix SSHKV_ (Ausnahme: DATABASE_URL fuer Prisma).
|
||||
|
||||
# --- Datenbank -----------------------------------------------------------------
|
||||
# Betrieb (docker-compose.yml): Passwort der Datenbank; DATABASE_URL setzt Compose selbst.
|
||||
POSTGRES_PASSWORD=
|
||||
# Entwicklung:
|
||||
DATABASE_URL=postgresql://sshkv:sshkv@localhost:5436/sshkv?schema=public
|
||||
# Nur fuer Tests (wird von Vitest geleert!)
|
||||
TEST_DATABASE_URL=postgresql://sshkv:sshkv@localhost:5436/sshkv_test?schema=public
|
||||
@@ -12,10 +15,18 @@ SSHKV_APP_URL=http://localhost:3400
|
||||
# Signiert Sitzungen. Erzeugen mit: openssl rand -base64 48
|
||||
SSHKV_APP_SECRET=
|
||||
|
||||
# --- Betrieb -------------------------------------------------------------------
|
||||
# Adresse/Port, an die die Weboberflaeche gebunden wird (Reverse Proxy davor).
|
||||
SSHKV_BIND=127.0.0.1
|
||||
SSHKV_PORT=3400
|
||||
|
||||
# --- Master-Key (nur Worker!) --------------------------------------------------
|
||||
# Datei mit 32 zufaelligen Bytes. Erzeugen mit: head -c 32 /dev/urandom > master.key
|
||||
# Ohne diese Datei ist jedes Datenbank-Backup wertlos – getrennt sichern!
|
||||
SSHKV_MASTER_KEY_FILE=./geheim/master.key
|
||||
# Betrieb: Datei auf dem Docker-Host, die als Secret nur in den Worker kommt.
|
||||
# Rechte: chown 1001:1001, chmod 400 (der Worker verweigert lesbare Schluessel).
|
||||
SSHKV_MASTER_KEY_HOST_FILE=./geheim/master.key
|
||||
|
||||
# --- OIDC (authentik) ----------------------------------------------------------
|
||||
SSHKV_OIDC_ISSUER=
|
||||
|
||||
Reference in New Issue
Block a user