#### NETWORKS networks: traefik_front_network: external: true back_network_mailserver: driver: bridge attachable: true #### SERVICES services: ### mailserver: hostname: mailserver.tips-of-mine.com container_name: mailserver image: ghcr.io/docker-mailserver/docker-mailserver:latest # More information about the mail-server ports: # https://docker-mailserver.github.io/docker-mailserver/latest/config/security/understanding-the-ports/ 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: - ./data/dms/mail-data/:/var/mail/ - ./data/dms/mail-state/:/var/mail-state/ - ./data/dms/mail-logs/:/var/log/mail/ - ./data/dms/config/:/tmp/docker-mailserver/ - /etc/localtime:/etc/localtime:ro restart: always 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 networks: - traefik_front_network labels: - "com.centurylinklabs.watchtower.enable=true" - "traefik.enable=true" - "traefik.docker.network=traefik_front_network" # HTTP - "traefik.http.routers.mailserver-http.rule=Host(`mailserver.tips-of-mine.com`)" - "traefik.http.routers.mailserver-http.entrypoints=http" - "traefik.http.routers.mailserver-http.priority=49" # HTTPS - "traefik.http.routers.mailserver-https.rule=Host(`mailserver.tips-of-mine.com`)" - "traefik.http.routers.mailserver-https.entrypoints=https" - "traefik.http.routers.mailserver-https.tls=true" - "traefik.http.routers.mailserver-https.priority=50" - "traefik.http.routers.mailserver.service=mailserver-https-service" # Middleware - "traefik.http.routers.mailserver.middlewares=redirect-webmail@docker" # - "traefik.http.middlewares.redirect-webmail.redirectregex.regex=.*" # - "traefik.http.middlewares.redirect-webmail.redirectregex.replacement=https://webmail.tips-of-mine.com/" # Service - "traefik.http.services.mailserver-https-service.loadbalancer.server.port=443"