version: "3.8"
services:
mail:
image: docker.io/mailserver/docker-mailserver:v9.1.0
hostname: ${HOSTNAME}
domainname: ${DOMAINNAME}
container_name: ${CONTAINER_NAME}
env_file: mailserver.env
# To avoid conflicts with yaml base-60 float, DO NOT remove the quotation marks.
ports:
- "25:25"
- "143:143"
- "587:587"
- "993:993"
volumes:
- ./letsencrypt/etc/letsencrypt/:/etc/letsencrypt
- ./maildata:/var/mail
- ./mailstate:/var/mail-state
- ./maillogs:/var/log/mail
- ./config/:/tmp/docker-mailserver/${SELINUX_LABEL}
- /etc/localtime:/etc/localtime:ro
restart: unless-stopped
cap_add: ["NET_ADMIN", "SYS_PTRACE"]
letsencrypt:
image: linuxserver/letsencrypt
container_name: letsencrypt
cap_add:
- NET_ADMIN
env_file: letsencrypt.env
environment:
- "PUID=${PUID}
- "PGID=${PGID}
- "TZ=${TZ}
- "URL=${URL}
- "VALIDATION=${VALIDATION}
- "EMAIL=${EMAIL}
- "DHLEVEL=${DHLEVEL}
- ./letsencrypt:/config
- 80:80
- 443:443