mirror of
https://github.com/firewalkwithm3/stacks.git
synced 2025-07-02 02:47:49 +08:00
42 lines
1.4 KiB
YAML
42 lines
1.4 KiB
YAML
name: mailserver
|
|
services:
|
|
mailserver:
|
|
image: ghcr.io/docker-mailserver/docker-mailserver:latest
|
|
container_name: mailserver
|
|
volumes:
|
|
- mailserver_data:/var/mail/
|
|
- mailserver_state:/var/mail-state/
|
|
- mailserver_logs:/var/log/mail/
|
|
- mailserver_config:/tmp/docker-mailserver/
|
|
- /etc/localtime:/etc/localtime:ro
|
|
- caddy_data:/srv/tls
|
|
environment:
|
|
SSL_TYPE: manual
|
|
SSL_CERT_PATH: /srv/tls/caddy/certificates/acme-v02.api.letsencrypt.org-directory/wildcard_.ferngarden.net/wildcard_.ferngarden.net.crt
|
|
SSL_KEY_PATH: /srv/tls/caddy/certificates/acme-v02.api.letsencrypt.org-directory/wildcard_.ferngarden.net/wildcard_.ferngarden.net.key
|
|
env_file: mailserver.env
|
|
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)
|
|
restart: always
|
|
healthcheck:
|
|
test: "ss --listening --ipv4 --tcp | grep --silent ':smtp' || exit 1"
|
|
timeout: 3s
|
|
retries: 0
|
|
hostname: mail.ferngarden.net
|
|
stop_grace_period: 1m
|
|
|
|
volumes:
|
|
mailserver_data:
|
|
name: mailserver_data
|
|
mailserver_state:
|
|
name: mailserver_state
|
|
mailserver_logs:
|
|
name: mailserver_logs
|
|
mailserver_config:
|
|
name: mailserver_config
|
|
caddy_data:
|
|
external: true
|