Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
docker [2020/12/11 17:11] – lwsystems | docker [2025/03/14 08:06] (aktuell) – [Benno MailArchiv als Docker Container einrichten] lwsystems | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Docker | + | ====== |
- | Benno MailArchiv steht auch als Docker-Image [[https:// | + | Benno MailArchiv steht auch als Docker-Image [[https:// |
- | ====== Installation ====== | + | **Bitte beachten Sie auch unsere [[gesetzeskonforme_e-mail-archivierung|Hinweise zur rechtssicheren bzw. GoBD-konformen Mailarchivierung]]!** |
+ | ===== Manueller Start ===== | ||
+ | |||
+ | < | ||
+ | docker run --name bma \ | ||
+ | --volume / | ||
+ | --volume / | ||
+ | --volume / | ||
+ | --volume / | ||
+ | --volume / | ||
+ | --volume / | ||
+ | -p 20022:22 -p 20080:80 -p 22500:22500 \ | ||
+ | bennomailarchiv/ | ||
+ | </ | ||
===== docker-compose ===== | ===== docker-compose ===== | ||
- | Das Image kann mit Hilfe von // | + | Das Image kann mit Hilfe von // |
Hiefür wird das folgende Compose-File angelegt: | Hiefür wird das folgende Compose-File angelegt: | ||
Zeile 17: | Zeile 30: | ||
services: | services: | ||
benno: | benno: | ||
- | image: bennomailarchiv/ | + | image: bennomailarchiv/ |
ports: | ports: | ||
- " | - " | ||
Zeile 24: | Zeile 37: | ||
restart: always | restart: always | ||
volumes: | volumes: | ||
- | - ${ARCHIVECONF_DIR: | + | - ${ARCHIVECONF_DIR: |
- ${ARCHIVE_DIR: | - ${ARCHIVE_DIR: | ||
- ${SYSTEM_DIR: | - ${SYSTEM_DIR: | ||
Zeile 36: | Zeile 49: | ||
docker-compose up -d | docker-compose up -d | ||
+ | |||
+ | ==== Installation mit Docker-Compose und Traefik ==== | ||
+ | |||
+ | Eine erweiterte Installation von Benno MailArchiv in Docker mit Hilfe von Docker-Compose und Traefik als Reverse-Proxy ist bei [[https:// | ||
===== Volume-Mapping ===== | ===== Volume-Mapping ===== | ||
Zeile 44: | Zeile 61: | ||
Die voreingstellten Pfade können mit Hilfe der Umgebungsvariablen an die lokale Umgebung angepasst werden. | Die voreingstellten Pfade können mit Hilfe der Umgebungsvariablen an die lokale Umgebung angepasst werden. | ||
- | * BENNOCONF_DIR: Benno Archiver Konfiguration (/ | + | * ARCHIVECONF_DIR: Benno Archiver Konfiguration (/ |
- | * REPO_DIR: [[begriffsbestimmungen# | + | * ARCHIVE_DIR: [[begriffsbestimmungen# |
* SYSTEM_DIR: Systemdaten (/ | * SYSTEM_DIR: Systemdaten (/ | ||
- | * INBOX_DIR: [[begriffsbestimmungen# | + | * INBOX_DIR: [[begriffsbestimmungen# |
* LOG_DIR: Log-Dateien (/ | * LOG_DIR: Log-Dateien (/ | ||
* WEBCONF_DIR: | * WEBCONF_DIR: | ||
Zeile 66: | Zeile 83: | ||
# | # | ||
ProxyPreserveHost On | ProxyPreserveHost On | ||
+ | RequestHeader set X-Forwarded-Proto " | ||
- | ProxyPass | + | ProxyPass |
- | ProxyPassReverse /benno http:// | + | ProxyPassReverse /benno http:// |
</ | </ | ||
Zeile 79: | Zeile 97: | ||
=== Admin-Login === | === Admin-Login === | ||
- | Beim ersten Start des Containers wird automatsich ein Passwort für den Benutzer "// | + | Beim ersten Start des Containers wird automatsich ein Passwort für den Benutzer "// |
+ | |||
+ | === Konfigurationsdateien === | ||
+ | |||
+ | Die Konfigurationsdateien | ||
+ | |||
+ | * ''/ | ||
+ | * ''/ | ||
+ | * ''/ | ||
+ | * ''/ | ||
+ | |||
+ | werden beim Start des Containers generiert. Hierbei werden die folgenden Einstellungen aus den entsprechenden Umgebungsvariablen gesetzt: | ||
+ | |||
+ | * ''/ | ||
+ | * host = ### | ||
+ | * basedn = ### | ||
+ | * tls = ### | ||
+ | * binddn = ### | ||
+ | * password = ### | ||
+ | * ''/ | ||
+ | * host ### | ||
+ | * port ### | ||
+ | * from bennomailarchiv.### | ||
+ | * user ### | ||
+ | * password ### | ||
+ | |||
+ | == Konfiguration sichern == | ||
+ | |||
+ | |||
+ | Falls eine Konfigurationsdatei manuell geändert wurde und beim Start nicht überschrieben werden soll, wird hierfür eine entsprechende .keep-Datei angelegt. Beim Start des Containers bleibt die angepasste Konfigurationsdatei dann unverändert. Die generierten Daten dann in die .keep-Datei geschrieben. | ||
+ | |||
+ | **Beispiel** | ||
+ | |||
+ | # touch / | ||
+ | |||
+ | |||
====== Mail-Import ====== | ====== Mail-Import ====== | ||
+ | |||
+ | ===== MILTER ===== | ||
Im Docker-Container ist ein [[mail-import_via_milter|MILTER]] Daemon gestartet. Auf dem Hostsystem ist hierfür der Port 22500 gebunden und kann direkt aus dem MTA per [[mail-import_via_milter# | Im Docker-Container ist ein [[mail-import_via_milter|MILTER]] Daemon gestartet. Auf dem Hostsystem ist hierfür der Port 22500 gebunden und kann direkt aus dem MTA per [[mail-import_via_milter# | ||
+ | |||
+ | ===== benno-smtp ===== | ||
+ | |||
+ | Im Container // | ||
+ | --- //Cred.: Tammo Schülke, REDLINK GmbH// | ||
+ | |||
+ | <file yml> | ||
+ | services: | ||
+ | benno-smtp: | ||
+ | image: bennomailarchiv/ | ||
+ | entrypoint: | ||
+ | - / | ||
+ | - -Dlog4j.configuration=/ | ||
+ | - -server | ||
+ | - -jar | ||
+ | - / | ||
+ | - -c | ||
+ | - / | ||
+ | volumes: | ||
+ | - ${INBOX_DIR: | ||
+ | restart: always | ||
+ | ports: | ||
+ | - 2500:2500 | ||
+ | </ |