diff --git a/caddy/Caddyfile b/caddy/Caddyfile index 2e38a14..7717a1b 100644 --- a/caddy/Caddyfile +++ b/caddy/Caddyfile @@ -78,3 +78,21 @@ api-dev.bizmatch.net { } } + +mail.bizmatch.net { + # IMAP über TLS (IMAPS) - Port 993 + reverse_proxy /imap dovecot:993 { + transport tcp + flush_interval -1 + } + + # Optional: Webmail-Oberfläche + # reverse_proxy /webmail webmail:80 + + # Logging + log { + output file /var/log/caddy/mail.bizmatch.net.log + } + + # TLS wird automatisch von Caddy verwaltet +} \ No newline at end of file diff --git a/caddy/docker-compose.yml b/caddy/docker-compose.yml index a56df0e..f90b09d 100644 --- a/caddy/docker-compose.yml +++ b/caddy/docker-compose.yml @@ -13,6 +13,7 @@ services: - bizmatch - keycloak - gitea + - mail_network volumes: - $PWD/Caddyfile:/etc/caddy/Caddyfile - caddy_data:/data @@ -32,7 +33,9 @@ networks: keycloak: external: true gitea: - external: true + external: true + mail_network: + external: true volumes: caddy_data: diff --git a/dovecot/docker-compose.yml b/dovecot/docker-compose.yml new file mode 100644 index 0000000..c6158b4 --- /dev/null +++ b/dovecot/docker-compose.yml @@ -0,0 +1,22 @@ +services: + dovecot: + image: dovecot/dovecot:latest + container_name: dovecot + restart: unless-stopped + ports: + - "143:143" # IMAP + - "993:993" # IMAPS (IMAP über SSL) + volumes: + - ./config/dovecot:/etc/dovecot + - ./data/mail:/var/mail + - ./logs:/var/log + # Bei Bedarf: Zugriff auf Caddy-Zertifikate + # - /pfad/zu/caddy/certs:/etc/dovecot/ssl:ro + environment: + - TZ=Europe/Berlin + networks: + - mail_network + +networks: + mail_network: + driver: bridge \ No newline at end of file