Ohne diesen Fix waere das Siegel im Docker-Betrieb wirkungslos geblieben - die Variable wurde nirgends an den Container durchgereicht. docker-compose.yml listet die Umgebungsvariablen einzeln auf und speist sie aus der .env im Projektstamm; ein env_file gibt es nicht, backend/.env wird vom Container also gar nicht gelesen. Dokumentiert und ergaenzt hatte ich bisher nur backend/.env.example - also die Datei, die fuer den Container irrelevant ist. - AUDIT_HMAC_KEY und AUDIT_HMAC_KEY_OLD in docker-compose.yml und in docker/docker-compose.yml aufgenommen (beide mit :- Default, damit ohne Wert weiterhin fail-safe ungesiegelt geschrieben wird) - beide Variablen samt Erklaerung in die .env.example im Projektstamm und in docker/.env.example uebernommen - README benennt jetzt explizit, welche Datei fuer welchen Betrieb gilt (Stamm-.env bei Docker, backend/.env nur ohne Container) Verifiziert: `docker-compose config` loest AUDIT_HMAC_KEY korrekt auf. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
41 lines
1.3 KiB
Bash
41 lines
1.3 KiB
Bash
# OpenCRM Docker Environment
|
|
# ============================
|
|
# Copy this file to .env and adjust the values
|
|
|
|
# Domain (for Caddy SSL certificate)
|
|
# Use your actual domain, e.g., crm.example.com
|
|
DOMAIN=localhost
|
|
|
|
# Database
|
|
DB_ROOT_PASSWORD=change-this-root-password
|
|
DB_NAME=opencrm
|
|
DB_USER=opencrm
|
|
DB_PASSWORD=change-this-password
|
|
|
|
# JWT Authentication
|
|
# Generate with: openssl rand -base64 32
|
|
JWT_SECRET=change-this-to-a-secure-random-string
|
|
# Access-Token kurz (XSS-Schutz, Token lebt nur im JS-Memory).
|
|
# Refresh-Token lang im httpOnly-Cookie.
|
|
JWT_EXPIRES_IN=15m
|
|
JWT_REFRESH_EXPIRES_IN=7d
|
|
|
|
# Encryption Key (for portal credentials)
|
|
# Generate with: openssl rand -hex 32
|
|
ENCRYPTION_KEY=change-this-to-a-32-byte-hex-key
|
|
|
|
# First Install: Set to "true" to seed database on first startup
|
|
# After first successful start, set back to "false"
|
|
RUN_SEED=true
|
|
|
|
# ---------- Siegel für das Audit-Log ----------
|
|
# Signiert jeden neuen Audit-Eintrag mit einem Schlüssel ausserhalb der
|
|
# Datenbank, damit sich die Beweisspur nicht nachtraeglich faelschen laesst.
|
|
# Generieren: openssl rand -hex 32 (pro Umgebung ein eigener Wert).
|
|
# Ohne Wert laeuft alles normal weiter, nur ungesiegelt.
|
|
# Einmal gesetzt nicht wieder entfernen - Details in der README.
|
|
AUDIT_HMAC_KEY=
|
|
|
|
# Nur beim Schluesselwechsel: frueherer Schluessel, mehrere kommagetrennt.
|
|
AUDIT_HMAC_KEY_OLD=
|