29 lines
1.2 KiB
Text
29 lines
1.2 KiB
Text
|
services:
|
||
|
mailserver:
|
||
|
image: ghcr.io/docker-mailserver/docker-mailserver:latest
|
||
|
container_name: mailserver
|
||
|
hostname: {{ mail_host }}
|
||
|
env_file: mailserver.env
|
||
|
ports:
|
||
|
- "25:25" # SMTP (explicit TLS => STARTTLS)
|
||
|
- "143:143" # IMAP4 (explicit TLS => STARTTLS)
|
||
|
- "465:465" # ESMTP (implicit TLS)
|
||
|
- "587:587" # ESMTP (explicit TLS => STARTTLS)
|
||
|
- "993:993" # IMAP4 (implicit TLS)
|
||
|
volumes:
|
||
|
- ./docker-data/dms/mail-data/:/var/mail/
|
||
|
- ./docker-data/dms/mail-state/:/var/mail-state/
|
||
|
- ./docker-data/dms/mail-logs/:/var/log/mail/
|
||
|
- ./docker-data/dms/config/:/tmp/docker-mailserver/
|
||
|
- /etc/localtime:/etc/localtime:ro
|
||
|
- /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/{{ mail_host }}/{{ mail_host }}.crt:/etc/letsencrypt/live/{{ mail_host }}/fullchain.pem
|
||
|
- /var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/{{ mail_host }}/{{ mail_host }}.key:/etc/letsencrypt/live/{{ mail_host }}/privkey.pem
|
||
|
restart: always
|
||
|
stop_grace_period: 1m
|
||
|
# cap_add:
|
||
|
# - NET_ADMIN
|
||
|
healthcheck:
|
||
|
test: "ss --listening --tcp | grep -P 'LISTEN.+:smtp' || exit 1"
|
||
|
timeout: 3s
|
||
|
retries: 0
|