# ── Datenbank ──────────────────────────────────────────────────────────────── DATABASE_URL=postgresql://proxdeploy:proxdeploy@localhost:5437/proxdeploy # Nur für Tests; wird vor jedem Test geleert. TEST_DATABASE_URL=postgresql://proxdeploy:proxdeploy@localhost:5437/proxdeploy_test # ── Geheimnisse ────────────────────────────────────────────────────────────── # Schlüssel für AES-256-GCM (Proxmox-Token, SSH-Schlüssel, OIDC-Secret): genau 32 Byte, base64. # Erzeugen: openssl rand -base64 32 – NIE ändern, sonst sind gespeicherte Geheimnisse unlesbar. PROXDEPLOY_SCHLUESSEL= # Signiert die Sitzungscookies. Erzeugen: openssl rand -base64 48 SITZUNG_GEHEIMNIS= # ── Adresse und Reverse-Proxy ──────────────────────────────────────────────── # Öffentliche Adresse, wie Browser und CLI sie sehen (ohne Schrägstrich am Ende). APP_URL=http://localhost:3000 # true hinter einem Reverse-Proxy: X-Forwarded-For/-Proto werden ausgewertet. TRUST_PROXY=false # ── Erster Administrator ───────────────────────────────────────────────────── # Wird nur angelegt, solange es noch keinen Benutzer gibt. Danach wirkungslos. ADMIN_BENUTZER=admin ADMIN_PASSWORT= # ── OIDC (optional, z. B. authentik) ───────────────────────────────────────── # Beim IdP als Redirect-URI eintragen: /api/v1/auth/oidc/rueckruf # Client-Typ „confidential“, Scopes openid profile email; der Gruppen-Claim muss im ID-Token stehen. OIDC_AKTIV=false OIDC_ISSUER= OIDC_CLIENT_ID= OIDC_CLIENT_SECRET= OIDC_ANZEIGENAME=SSO # Gruppen-Claim und Gruppennamen für die Rollen. Wer in keiner der beiden Gruppen ist, kommt nicht # hinein. Beide leer = jeder beim IdP angemeldete Benutzer wird Operator. OIDC_GRUPPEN_CLAIM=groups OIDC_GRUPPE_ADMIN=proxdeploy-admins OIDC_GRUPPE_OPERATOR=proxdeploy-operators # ── Worker ─────────────────────────────────────────────────────────────────── # Wie viele Aufträge gleichzeitig laufen dürfen. WORKER_PARALLEL=4 # ── Logs ───────────────────────────────────────────────────────────────────── # trace | debug | info | warn | error LOG_LEVEL=info