Files
archivmail/config/config.docker.yml.example
T
sysopsandClaude Sonnet 4.6 043520ecc3 chore(PROJ-59): tote Xapian-Reste aus config.docker.yml.example entfernen
xapian_path/backend: xapian waren toter Datenmüll (StorageConfig hat kein
xapian_path-Feld, wird beim YAML-Unmarshal stillschweigend ignoriert).
Auf den tatsächlich genutzten Manticore-Default umgestellt
(backend: manticore, manticore_dsn). Behebt das in PROJ-56 QA als
INFO 3 dokumentierte, außerhalb des Scopes liegende Finding.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 00:03:49 +02:00

96 lines
3.2 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# archivmail Docker-Konfiguration
# Kopieren nach: /etc/archivmail/config.yml
# Wird als Read-Only-Volume in den Container gemountet.
server:
api_port: 8080
smtp_port: 2525
database:
host: postgres # Docker Compose Service-Name (nicht localhost!)
port: 5432
name: archivmail
user: archivmail
password: CHANGE_ME_DB_PASSWORD
sslmode: disable
storage:
store_path: /var/archivmail/store
astore_path: /var/archivmail/astore
keyfile: /etc/archivmail/keyfile
# PROJ-34: GoBD-Löschsperre in Tagen (0 = keine; z.B. 3650 für 10 Jahre)
retention_days: 0
# PROJ-51: globale Mindest-Aufbewahrungsfrist; Regeln/Mandanten dürfen nur
# verlängern, nie verkürzen (0 = keine Mindestfrist)
min_retention_days: 0
index:
backend: manticore
manticore_dsn: "manticore@tcp(127.0.0.1:9306)/?charset=utf8mb4"
batch_size: 100
async_queue_size: 1000
# PROJ-58: batch_mode (optional, Default false wenn weggelassen).
# true = der Dauerbetrieb-Index-Worker wird NICHT gestartet; neue Mails
# bleiben indexed_at IS NULL bis der Cron-Job 'archivmail index-pending'
# sie verarbeitet (siehe deploy/cron.d/archivmail, Zeiten dort anpassbar).
# Glättet Schreiblast auf der Festplatte. false = sofortige, fortlaufende
# Indexierung. Für Neuinstallationen ist batch_mode hier standardmäßig
# aktiviert — bei Bedarf einfach auf false setzen.
batch_mode: true
api:
bind: "0.0.0.0:8080"
secret: CHANGE_ME_64_CHAR_SECRET
secure_cookies: true
trusted_proxies:
- "172.16.0.0/12" # Docker-interne Netzwerke
- "127.0.0.1"
smtp:
enabled: true
bind: "0.0.0.0:2525"
domain: mail.example.com
max_size_mb: 25
allowed_ips:
- "0.0.0.0/0"
- "::/0"
tenant_routing: default
default_tenant_id: 1
imap_server:
enabled: false
bind: "0.0.0.0:1143"
# PROJ-56: OCR-Last-Entzerrung (optional).
# paused_hours definiert ein lokales Zeitfenster [start, end), in dem der
# OCR-Worker NICHT verarbeitet (Aufträge bleiben als pending erhalten).
# Wrap-around über Mitternacht wird unterstützt, z.B. [22, 6] = Pause 22:0006:00.
# Ohne Sektion / ohne paused_hours: altes Verhalten (immer aktiv).
# ocr:
# paused_hours: [8, 18] # OCR pausiert während der Geschäftszeiten
#
# PROJ-58: ocr.batch_mode (optional, Default false wenn weggelassen).
# true = der Dauerbetrieb-OCR-Worker wird NICHT gestartet; neue Mails bleiben
# ocr_status='pending' bis der Cron-Job
# 'archivmail ocr-reprocess --status pending' sie verarbeitet
# (siehe deploy/cron.d/archivmail, Zeiten dort anpassbar). false = sofortige
# Verarbeitung. Für Neuinstallationen ist batch_mode hier standardmäßig
# aktiviert — bei Bedarf einfach auf false setzen.
ocr:
batch_mode: true
# PROJ-56: IMAP-Sync-Jitter (optional).
# jitter_seconds verteilt den tatsächlichen Sync-Start jedes Accounts
# deterministisch (abgeleitet aus Account-ID) über dieses Fenster, damit nicht
# alle Postfächer auf derselben Minutengrenze pollen.
# Weglassen der Sektion = Default 240s (4 Min). jitter_seconds: 0 = deaktiviert.
# imap_scheduler:
# jitter_seconds: 240
audit:
log_path: /var/archivmail/audit.log
retention_days: 365
logging:
level: info