Betrieb
Referenz der Umgebungsvariablen
Vollständige Referenz der QuoteNode-Umgebungsvariablen für Produktion, Development, Docker Compose, Backup-Worker und Vite-Frontend.
Referenz der Umgebungsvariablen
Diese Seite bündelt die Umgebungsvariablen, die aktuell im QuoteNode-Projekt verwendet werden.
Die wichtigsten Quellen der Wahrheit im Anwendungs-Repository sind:
infra/.env.prod.exampleinfra/.env.dev.exampleinfra/.env.dev-sidinfra/docker-compose.*.yml
Verwenden Sie diese Seite als operatororientierten Katalog. Für ein minimales Setup siehe den Installationsleitfaden. Für Deployment-Topologie siehe Bereitstellungsoptionen.
Wie diese Referenz zu lesen ist
- Prod bedeutet: Variable gehört in eine Produktions-
.env - Dev bedeutet: lokale Entwicklung oder Demo-Stack
- Compose bedeutet: hostseitige Docker-Compose-Verkabelung statt direktem Anwendungscode
- Leere Standardwerte bedeuten meist: nur dann explizit setzen, wenn das Feature wirklich benötigt wird
Compose- und lokaler Stack
Diese Variablen beeinflussen das lokale Docker-Compose-Setup und die Proxy-/API-Verdrahtung des Frontends.
| Variable | Bereich | Zweck | Typischer Wert |
|---|---|---|---|
COMPOSE_PROJECT_NAME |
Dev / Compose | Verhindert Namenskollisionen zwischen mehreren lokalen Stacks. | quotenode-dev, quotenode-dev-sid |
POSTGRES_PORT |
Dev / Compose | Host-Port für PostgreSQL. | 5433, 5434 |
PG_JIT |
Dev / Compose | PostgreSQL-JIT-Kompilierung. Standardmäßig aus — hilft bei dieser OLTP-Last selten. Zum Aktivieren auf on setzen. |
off |
MAILPIT_PORT |
Dev / Compose | Host-Port für die Mailpit-Oberfläche. | 8025, 8026 |
BACKEND_PORT |
Dev / Compose | Host-Port für das Backend-API. | 8091, 8092 |
FRONTEND_PORT |
Dev / Compose | Host-Port für das Frontend. | 5174, 5175 |
VITE_PUBLIC_API_BASE |
Dev / Frontend | Im Browser sichtbare API-Basis für lokale Vite-Stacks. | http://localhost:8091, http://localhost:8092 |
APP_VERSION |
Prod / Dev / Compose | Docker-Image-Tag, das Compose auswählt. | latest, 1.0.0 |
APP_CHANNEL |
Prod / Dev / Compose | Release-Kanal, eingebettet in Build-Metadaten und UI-Labels. | alpha, stable |
VITE_RELEASE_CHECK_ENABLED |
Prod / Dev / Frontend | Aktiviert die Upstream-Release-Prüfung (nur Admin). | true, false |
VITE_RELEASE_MANIFEST_URL |
Prod / Dev / Frontend | Öffentliche JSON-Manifest-URL für Upstream-Release-Prüfungen. | https://quotenode.dev/releases/latest.json |
PROXY_MODE |
Prod / Dev / Compose | Steuert, ob Caddy im Stack (internal) oder extern (external) läuft. |
internal, external |
DOMAIN |
Prod / Compose | Öffentliche Domain für Caddy und öffentliche URLs im internal-Modus. |
quotenode.example.com |
SECURITY_TRUSTED_PROXIES |
Prod / Dev / Compose | Normalerweise leer — die Client-IP wird hinter internen Proxys (private/Loopback-Bereiche) und CDNs wie Cloudflare (über CF-Connecting-IP) automatisch erkannt. Weiterleitungs-Header von einem direkten (nicht internen) Peer werden ignoriert. Nur für ein ungewöhnliches Proxy setzen, dessen Transport-Peer eine öffentliche Adresse ist. |
leer, 203.0.113.5/32 |
Datenbank und Kernlaufzeit
| Variable | Bereich | Zweck | Typischer Wert |
|---|---|---|---|
DB_URL |
Prod / Dev | JDBC-Connection-String für PostgreSQL. | jdbc:postgresql://postgres:5432/quotenode |
DB_USERNAME |
Prod / Dev | Datenbank-Benutzer. | quotenode, app |
DB_PASSWORD |
Prod / Dev | Datenbank-Passwort. | 32+ Zufallszeichen in Produktion |
DB_NAME |
Prod / Dev / Compose | Datenbankname für App und Compose. | quotenode, app |
DB_AUTO_MIGRATE |
Prod / Dev | Automatische Migration der PostgreSQL-Hauptversion beim Start (von stack-up.sh genutzt). Standardmäßig aus; bei true wird ein älteres Datenvolume vor dem Start gesichert und migriert. |
false |
SPRING_PROFILES_ACTIVE |
Prod / Dev | Aktiver Spring-Profile-Name. | prod, dev |
CORS_ALLOWED_ORIGINS |
Prod / Dev | Erlaubte Browser-Origins für das API. In Produktion kein *. |
https://ihredomain.de |
LOG_LEVEL |
Prod / Dev | Basis-Log-Level der Anwendung. | ERROR, INFO, DEBUG |
Docker-Logs und Support-Diagnostik
| Variable | Bereich | Zweck | Typischer Wert |
|---|---|---|---|
DOCKER_LOG_MAX_SIZE |
Prod / Compose | Maximale Größe einer Container-Logdatei vor Rotation. | 10m |
DOCKER_LOG_MAX_FILE |
Prod / Compose | Anzahl aufbewahrter rotierter Logdateien. | 5 |
SUPPORT_LOGS_BUFFER_SIZE |
Prod | Größe des Support-Log-Vorschau-Puffers. | 4000 |
SUPPORT_LOGS_PREVIEW_RATE_LIMIT_PER_MINUTE |
Prod | Rate Limit für Support-Logvorschau. | 30 |
SUPPORT_LOGS_LOG_LEVEL_DEFAULT_TTL_MINUTES |
Prod | Auto-Revert-Zeit für temporär erhöhte Log-Level. | 15 |
SUPPORT_LOGS_LOG_LEVEL_MAX_TTL_MINUTES |
Prod | Maximales Zeitfenster für temporäre Log-Level-Erhöhungen. | 30 |
SUPPORT_LOGS_LOG_LEVEL_ALLOWED_SCOPES |
Prod | Paketbereiche, für die temporäres Hochsetzen erlaubt ist. | dev.quotenode,... |
Authentifizierung und Session-Sicherheit
| Variable | Bereich | Zweck | Typischer Wert |
|---|---|---|---|
DB_ENCRYPTION_KEY |
Prod / Dev | Hauptschlüssel für Anwendungsverschlüsselung. | 64 Hex-Zeichen in Produktion |
TIMING_TOKEN_SECRET |
Prod / Dev | HMAC-Secret für Timing-Schutz. | 32+ Zufallszeichen |
PUBLIC_LINK_PASSWORD_SESSION_SECRET |
Prod / Dev | Session-Secret für geschützte öffentliche Links. | 32+ Zufallszeichen |
AUTH_PASSWORD_MIN_LENGTH |
Prod / Dev | Mindestlänge für Passwörter. | 12 in Prod, 8 in Dev |
AUTH_PASSWORD_COMPLEXITY_LEVEL |
Prod / Dev | Passwort-Komplexitätslevel. | 2 in Prod, 1 in Dev |
AUTH_SESSION_IDLE_TIMEOUT_MIN |
Prod / Dev | Session-Idle-Timeout. | 30, 480 |
SECURITY_SESSION_ABSOLUTE_TIMEOUT_H |
Prod / Dev | Maximale Sessiondauer unabhängig von Aktivität. | 12, 24 |
SECURITY_MAX_FAILED_LOGINS_SOFT |
Prod / Dev | Schwelle für weiche Reaktion auf fehlgeschlagene Logins. | 5, 10 |
SECURITY_MAX_FAILED_LOGINS_TEMP_LOCK |
Prod / Dev | Schwelle für temporäre Sperre. | 10, 20 |
SECURITY_MAX_FAILED_LOGINS_HARD_LOCK |
Prod / Dev | Schwelle für harte Sperre. | 20, 50 |
SECURITY_TEMP_LOCK_MINUTES |
Prod / Dev | Dauer der temporären Sperre. | 30, 5 |
FEATURE_2FA_ENABLED |
Prod / Dev | globaler 2FA-Schalter. | true, false |
SECURITY_REQUIRE_2FA_ROLES |
Prod / Dev | Rollen, die 2FA erzwingen. | ADMIN |
SECURITY_BOT_DETECTION_ENABLED |
Prod / Dev | aktiviert Bot-Detection. | true, false |
SECURITY_BOT_SCORE_WARN_THRESHOLD |
Prod / Dev | Warnschwelle für Bot-Score. | 30 |
SECURITY_BOT_SCORE_BLOCK_THRESHOLD |
Prod / Dev | Blockschwelle für Bot-Score. | 70 |
SECURITY_IP_WHITELIST |
Prod / Dev | Vom Operator durchgesetzte IP-Allowlist (durch Kommas getrennte literale IP/CIDR). Wenn aktiviert, schützt die Allowlist die gesamte Admin-Oberfläche — Login, die 2FA-Abfrage und jede authentifizierte Admin-Route — sodass nur Health/Infra und kundenseitige öffentliche Endpunkte erreichbar bleiben. Wenn gesetzt, ist sie maßgeblich gegenüber der In-App-Tenant-Allowlist und in der UI schreibgeschützt; eine Operatorliste wird beim Start ohne Auto-Rollback durchgesetzt, stellen Sie also sicher, dass Ihre eigene Adresse abgedeckt ist. Leer = die Tenant-Einstellung (falls vorhanden) gilt. Löst Clients über SECURITY_TRUSTED_PROXIES auf. |
leer, 203.0.113.10,198.51.100.0/24 |
SECURITY_IP_WHITELIST_FORCE_DISABLE |
Runtime override | Notfall-Override zum Deaktivieren der gespeicherten IP-Allowlist-Durchsetzung (vor jeglichem Allowlist-Parsing geprüft, behebt also auch eine ungültige gespeicherte Liste — und da die Allowlist nun den Login schützt, stellt es die Anmeldemöglichkeit wieder her). Neustart erforderlich; nur ENV, nie über die UI. Deaktiviert nur die IP-Allowlist — nicht GeoIP, Bot-Erkennung oder Rate Limiting. | false |
SECURITY_IP_WHITELIST_CONFIRMATION_WINDOW_SECONDS |
Prod / Dev | Wie lange ein In-App-Aktivieren/Einschränken der Allowlist auf erneute Bestätigung wartet, bevor es automatisch auf die vorherige Liste zurückgesetzt wird (Sperrschutz). Die bearbeitende Sitzung bestätigt automatisch, wenn ihre aktuelle Adresse abgedeckt ist. | 120 |
CRM, Dateien, Import und Produktmedien
| Variable | Bereich | Zweck | Typischer Wert |
|---|---|---|---|
CRM_DEDUP_NAME_SIMILARITY_THRESHOLD |
Prod / Dev | pg_trgm-Schwelle für Firmen-Duplikatswarnungen. |
0.8 |
CRM_DEDUP_EMAIL_DOMAIN_WARN |
Prod / Dev | Warnung bei passender E-Mail-Domain zu bestehenden Datensätzen. | true |
CRM_ATTACHMENT_MAX_SIZE_MB |
Prod / Dev | Maximale Größe eines CRM-Anhangs. | 25, 10 |
CRM_ATTACHMENT_ALLOWED_TYPES |
Prod / Dev | Zulässige CRM-Anhangs-Endungen. | pdf,doc,docx,... |
CSV_IMPORT_MAX_ROWS |
Prod / Dev | Zeilenlimit für CSV-Importe (CRM). | 5000 |
APP_PRODUCT_IMPORT_MAX_ROWS |
Prod / Dev | Zeilenlimit für Produkt-Importe (CSV/XLSX). | 50000 |
STORAGE_PATH |
Prod / Dev | Hauptpfad für Uploads. | /data/uploads, ./data/uploads |
PIM_MEDIA_MAX_SIZE_MB |
Prod / Dev | Maximale Größe eines einzelnen Produktbilds. | 3, 5 |
PIM_MEDIA_MAX_PER_PRODUCT |
Prod / Dev | Maximale Anzahl Medien pro Produkt. | 5, 10 |
PIM_MEDIA_THUMBNAIL_WIDTH |
Prod / Dev | Breite der Thumbnails in Pixeln. | 300 |
PIM_MEDIA_ALLOWED_TYPES |
Prod / Dev | Erlaubte Produktmedien-Endungen. | jpg,jpeg,png,webp,svg |
PIM_MEDIA_MAX_MEGAPIXELS |
Prod / Dev | Lehnt Bilder ab, deren Pixelmaße diese Megapixelzahl überschreiten — aus dem Header geprüft vor jeder vollständigen Dekodierung (Speicherschutz gegen Dekompressionsbomben). | 40 |
PIM_MEDIA_OPTIMIZE_ENABLED |
Prod / Dev | Skaliert und kodiert das gespeicherte Original beim Upload neu. false behält Originale unverändert. |
true |
PIM_MEDIA_OPTIMIZE_MAX_DIMENSION |
Prod / Dev | Längste-Seite-Limit (px) für das gespeicherte Original bei aktivierter Optimierung (Angebote nutzen stets ein 300px-Thumbnail). | 2560 |
PIM_MEDIA_OPTIMIZE_QUALITY |
Prod / Dev | JPEG-Requalität (0.0–1.0) bei der Bildoptimierung. |
0.85 |
IMPORT_ZIP_MAX_SIZE_MB |
Prod / Dev | Maximale ZIP-Größe für Bildimport. | 100 |
IMPORT_ZIP_MAX_IMAGES |
Prod / Dev | Maximale Bildanzahl pro ZIP. | 1000 |
IMPORT_IMAGE_MAX_SIZE_MB |
Prod / Dev | Maximale Größe eines Einzelbilds im ZIP-Import. | 5 |
IMPORT_IMAGE_FUZZY_THRESHOLD |
Prod / Dev | Schwelle für Fuzzy-Matching von Dateinamen. | 0.82 |
MULTIPART_MAX_FILE_SIZE |
Prod / Dev | Globale Obergrenze für eine einzelne hochgeladene Datei — der Upload-Rahmen. Die funktionsspezifischen Limits oben werden separat und strenger erzwungen. Bemessen für den größten legitimen Upload: ein Bild-ZIP-Archiv. | 200MB |
MULTIPART_MAX_REQUEST_SIZE |
Prod / Dev | Globale Obergrenze für eine ganze Multipart-Anfrage, z. B. Mehrdatei-Upload. | 220MB |
MULTIPART_FILE_SIZE_THRESHOLD |
Prod / Dev | Uploads größer als dies werden in eine temporäre Datei ausgelagert statt in den Speicher — hält große Uploads vom JVM-Heap fern. | 2MB |
Versand, FX und Angebotsdefaults
| Variable | Bereich | Zweck | Typischer Wert |
|---|---|---|---|
SHIPPING_DEFAULT_VOLUMETRIC_DIVISOR |
Prod / Dev | Divisor für volumetrisches Versandgewicht. | 4000 |
SHIPPING_OVERRIDE_REQUIRES_REASON |
Prod / Dev | Begründungspflicht bei manuellem Versandkosten-Override. | true |
FX_PROVIDER |
Prod / Dev | Quelle für Wechselkurse. | NBP, MOCK, ECB, CUSTOM |
FX_PROVIDER_URL |
Prod / Dev | Override-URL für einen eigenen FX-Provider. | leer außer bei CUSTOM |
FX_REFRESH_INTERVAL_MIN |
Prod / Dev | Intervall für automatischen FX-Refresh. | 60, 0 |
FX_DEFAULT_MARGIN_PERCENT |
Prod / Dev | Standardaufschlag auf Provider-Kurse. | 0 |
FX_DEVIATION_WARN_PERCENT |
Prod / Dev | Warnschwelle für manuelle Kursabweichungen. | 3 |
FX_DEVIATION_BLOCK_PERCENT |
Prod / Dev | Blockschwelle für manuelle Kursabweichungen. | 8 |
OFFER_NUMBER_PREFIX |
Prod / Dev | Präfix der Angebotsnummern. | OF |
E-Mail, öffentliche Links und Benachrichtigungen
| Variable | Bereich | Zweck | Typischer Wert |
|---|---|---|---|
SMTP_HOST |
Prod / Dev | SMTP-Host für Versand. | Provider-Host, localhost |
SMTP_PORT |
Prod / Dev | SMTP-Port. | 587, 1025, 1026 |
SMTP_USERNAME |
Prod / Dev | SMTP-Benutzername. | Provider-Konto |
SMTP_PASSWORD |
Prod / Dev | SMTP-Passwort. | Provider-Secret |
SMTP_AUTH |
Prod / Dev | aktiviert SMTP-Authentifizierung. | true, false |
SMTP_STARTTLS |
Prod / Dev | aktiviert STARTTLS. | true, false |
PUBLIC_LINK_TOKEN_BYTES |
Prod / Dev | Entropiegröße für öffentliche Link-Tokens. | 32 |
PUBLIC_LINK_DEFAULT_EXPIRY_DAYS |
Prod / Dev | Standardgültigkeit für öffentliche Links. | 0 = unbegrenzt |
PUBLIC_RATE_LIMIT_OPEN_PER_HOUR |
Prod / Dev | Stundenlimit für öffentliche Angebotsaufrufe. | 60, 999 |
PUBLIC_RATE_LIMIT_ACTION_PER_HOUR |
Prod / Dev | Stundenlimit für öffentliche Aktionen wie Annahme/Ablehnung. | 5, 999 |
TRACKING_IP_ANONYMIZE |
Prod / Dev | aktiviert IP-Anonymisierung in Tracking-Daten. | false |
TRACKING_IP_ANONYMIZE_AFTER_DAYS |
Prod / Dev | verzögerte IP-Anonymisierung nach N Tagen. | 0 |
TRACKING_RETENTION_DAYS |
Prod / Dev | Aufbewahrung für Tracking-Daten öffentlicher Links. | 365 |
CLIENT_CONFIRM_EMAIL_ENABLED |
Prod / Dev | versendet Bestätigung an den Kunden nach Annahme. | false |
NOTIFICATIONS_ENABLED |
Prod / Dev | aktiviert das Benachrichtigungssystem. | true |
NOTIFICATIONS_EMAIL_ENABLED |
Prod / Dev | aktiviert E-Mail-Zustellung für Benachrichtigungen. | true, false |
NOTIFICATIONS_PUBLIC_PREFERENCES_URL |
Prod | öffentliche URL für Benachrichtigungseinstellungen. | https://ihredomain.de/notifications/preferences |
NOTIFICATIONS_PREFERENCE_TOKEN_TTL_DAYS |
Prod | Gültigkeit des Einstellungs-Tokens. | 30 |
NOTIFICATIONS_OFFER_EXPIRY_WARN_DAYS |
Prod / Dev | Erinnerungszeitplan vor Angebotsablauf. | 7,2 |
NOTIFICATIONS_LICENSE_EXPIRY_WARN_DAYS |
Prod / Dev | Erinnerungen vor Lizenzablauf. | 30,14,7,1 |
REMINDERS_JOB_INTERVAL_MINUTES |
Prod / Dev | Intervall des Reminder-Jobs. | 5 |
PDF-Erzeugung
| Variable | Bereich | Zweck | Typischer Wert |
|---|---|---|---|
PDF_ENABLED |
Prod / Dev | aktiviert PDF-Erzeugung. | true, false |
PDF_GOTENBERG_URL |
Prod / Dev | interne URL des Gotenberg-Dienstes. | http://gotenberg:3000 |
PDF_SYNC_TIMEOUT_MS |
Prod / Dev | Timeout für synchrone PDF-Erzeugung. | 10000, 5000 |
PDF_SYNC_MAX_ITEMS |
Prod / Dev | maximale Positionszahl für synchrone Erzeugung. | 50 |
PDF_STORAGE_PATH |
Prod / Dev | Pfad für gespeicherte PDFs. | /data/pdfs, ./data/pdfs |
PDF_RETENTION_DAYS |
Prod / Dev | Aufbewahrungsdauer erzeugter PDFs. | 365 |
PDF_RETRY_BACKOFF_SECONDS |
Prod / Dev | Retry-Backoff für asynchrone PDF-Jobs. | 30,120,600 |
PDF_WORKER_CONCURRENCY |
Prod / Dev | Parallelität des PDF-Workers. | 2 |
PDF_WORKER_POLL_INTERVAL_MS |
Prod / Dev | Polling-Intervall des PDF-Workers. | 2000 |
Lizenzierung, Reports und Wartung
| Variable | Bereich | Zweck | Typischer Wert |
|---|---|---|---|
LICENSE_SKIP_SIGNATURE_CHECK |
Prod / Dev | umgeht die Lizenzsignaturprüfung. Nie in Produktion. | false, true |
LICENSE_EXPIRY_CHECK_INTERVAL_H |
Prod / Dev | Intervall zur Prüfung des Lizenzablaufs. | 24 |
REPORTS_DEFAULT_PERIOD_DAYS |
Prod / Dev | Standard-Datumsbereich für Reports. | 30 |
REPORTS_EXPORT_MAX_ROWS |
Prod / Dev | Zeilenlimit für Report-Exporte. | 10000 |
Backups, GeoIP und Privacy-Ops
| Variable | Bereich | Zweck | Typischer Wert |
|---|---|---|---|
BACKUP_ENABLED |
Prod / Dev | aktiviert geplante Backups. | true, false |
BACKUP_CRON |
Prod / Dev | Cron-Zeitplan für automatische Backups. | 0 0 2 * * * |
BACKUP_RETENTION_DAILY |
Prod / Dev | Anzahl täglicher Backups, die gehalten werden. | 7 |
BACKUP_RETENTION_WEEKLY |
Prod / Dev | Anzahl wöchentlicher Backups. | 4 |
BACKUP_RETENTION_MONTHLY |
Prod / Dev | Anzahl monatlicher Backups. | 12 |
BACKUP_LOCAL_DIR |
Runtime / Compose | lokaler Pfad für Backups und Worker. | /app/data/backups |
BACKUP_ARCHIVE_ENCRYPTION_MODE |
Prod / Dev | Archivverschlüsselung: AGE_RECIPIENT (empfohlen) oder NONE. |
AGE_RECIPIENT |
BACKUP_AGE_RECIPIENT |
Prod / Dev | Öffentlicher age-Empfänger (age1...) für verschlüsselte Archive. |
age1... |
BACKUP_DATABASE_PAYLOAD_MODE |
Prod / Dev | Datenbank-Payload: APP_ENCRYPTED (Standard) oder PII_DECRYPTED. |
APP_ENCRYPTED |
JOBS_MODE |
Prod / Dev / Compose | Welche geplanten Jobs der JVM-Scheduler ausführt: all (Web + Backups in einem Container), web (nur Web — mit einem backup-only-Worker kombinieren), backup-only (dedizierter Backup-Worker). |
all |
BACKUP_RUNTIME_PROFILE |
Prod / Dev | Laufzeitprofil-Label, das in Backup-Logs/Manifesten gespeichert wird: WORKER, WEB_MAINTENANCE, ONE_SHOT, OFFLINE_MAINTENANCE. WEB_MAINTENANCE mit JOBS_MODE=all kombinieren (kein separater Worker); WORKER mit JOBS_MODE=web + einem backup-only-Worker. |
WORKER |
BACKUP_VERIFY_MODE |
Prod / Dev | Verifizierung nach dem Backup: off, archive, sandbox. |
off |
BACKUP_ALLOW_UNENCRYPTED_LOCAL_BACKUP |
Prod / Dev | Erlaubt explizit ein unverschlüsseltes lokales Backup. | false |
BACKUP_RCLONE_REMOTE |
Prod / Dev | rclone-Ziel für Offsite-Backups. | s3:bucket/path |
BACKUP_OFFLINE_NOTICE_SECONDS |
Prod | Karenzzeit, bevor die Offline-Wartung Dienste stoppt. | 300 |
BACKUP_MAINTENANCE_PAGE_ENABLED |
Prod | Zeigt während des Offline-Backups eine statische Wartungsseite. | false |
BACKUP_DOWNLOAD_GRANT_TTL_SECONDS |
Prod / Dev | TTL für einmalige Backup-Download-Freigaben. | 120 |
GEOIP_ENABLED |
Prod / Dev | Nur Schalter für die Länder-Durchsetzung (zugleich Notfallschalter). Die Datenbank wird unabhängig geladen und aktualisiert — siehe GEOIP_AUTO_UPDATE. |
false |
GEOIP_DB_PATH |
Prod / Dev | Pfad zur GeoIP-Datenbank (beim Start automatisch geladen; standardmäßig keyless DB-IP, MaxMind über MAXMIND_*). |
/app/data/geoip/... |
SECURITY_GEOIP_ALLOWED_COUNTRIES |
Prod / Dev | ISO-Allowlist für GeoIP. | leer oder PL,DE,CZ |
MAXMIND_ACCOUNT_ID |
Prod | MaxMind-Konto für GeoLite-Download. | Account-ID |
MAXMIND_LICENSE_KEY |
Prod | MaxMind-Lizenzschlüssel. | Secret |
GEOIP_EDITION_ID |
Prod | MaxMind-Editions-ID. | GeoLite2-Country |
GDPR_ANONYMIZE_AUTO_AFTER_DAYS |
Prod / Dev | Zeitraum bis zur automatischen Anonymisierung. | 0 |
Praktische Hinweise
- Für echte Deployments sollten Sie mit der Produktionsvorlage starten, für lokale Arbeit mit der Dev-Vorlage.
DB_ENCRYPTION_KEY,TIMING_TOKEN_SECRET,PUBLIC_LINK_PASSWORD_SESSION_SECRETund SMTP-Zugangsdaten sind Secrets und müssen sicher gesichert werden.- Compose-only-Ports und Frontend-Variablen gehören nicht in produktive
.env-Dateien, außer Ihr Deployment benötigt sie explizit. - Wenn Sie nur den kleinsten sinnvollen Einstieg brauchen, ist der Installationsleitfaden bewusst kürzer als diese Referenz.