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 | ||
| + | </ | ||