oxmox-dot-dev/dms/docker-compose.yaml

45 lines
1.7 KiB
YAML

version: "3.3"
# logger driver - change this driver to ship all container logs to a different location
x-logging: &logging
logging:
driver: loki
options:
loki-url: "http://localhost:3100/loki/api/v1/push"
services:
mailserver:
image: ghcr.io/docker-mailserver/docker-mailserver:latest
container_name: "mailserver"
# Provide the FQDN of your mail server here (Your DNS MX record should point to this value)
hostname: oxmox.dev
env_file: mailserver.env
# More information about the mail-server ports:
# https://docker-mailserver.github.io/docker-mailserver/latest/config/security/understanding-the-ports/
# To avoid conflicts with yaml base-60 float, DO NOT remove the quotation marks.
ports:
- "25:25" # SMTP (explicit TLS => STARTTLS, Authentication is DISABLED => use port 465/587 instead)
- "143:143" # IMAP4 (explicit TLS => STARTTLS)
- "465:465" # ESMTP (implicit TLS)
- "587:587" # ESMTP (explicit TLS => STARTTLS)
- "993:993" # IMAP4 (implicit TLS)
volumes:
- ./dms-data/mail-data/:/var/mail/
- ./dms-data/mail-state/:/var/mail-state/
- ./dms-data/mail-logs/:/var/log/mail/
- ./dms-data/config/:/tmp/docker-mailserver/
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- ../letsencrypt/acme.json:/etc/letsencrypt/acme.json:ro
restart: unless-stopped
stop_grace_period: 1m
# Uncomment if using `ENABLE_FAIL2BAN=1`:
# cap_add:
# - NET_ADMIN
healthcheck:
test: "ss --listening --tcp | grep -P 'LISTEN.+:smtp' || exit 1"
timeout: 3s
retries: 0
<<: *logging
labels:
- "traefik.enable=true"