2026-06-15 00:57:34 +08:00
|
|
|
services:
|
|
|
|
|
api:
|
2026-08-03 16:16:20 +08:00
|
|
|
image: ${LANQIN_API_IMAGE:-ghcr.io/zxyszx/newszxcn-email-api:latest}
|
2026-06-15 00:57:34 +08:00
|
|
|
env_file: .env
|
2026-06-24 11:03:01 +08:00
|
|
|
environment:
|
|
|
|
|
LANQIN_SMTP_HOST: ${LANQIN_STACK_SMTP_HOST:-postfix}
|
|
|
|
|
LANQIN_SMTP_PORT: ${LANQIN_STACK_SMTP_PORT:-25}
|
2026-06-24 13:10:24 +08:00
|
|
|
LANQIN_SUBMISSION_ADDR: ${LANQIN_SUBMISSION_ADDR:-}
|
|
|
|
|
LANQIN_SUBMISSION_TLS_ADDR: ${LANQIN_SUBMISSION_TLS_ADDR:-}
|
2026-06-15 00:57:34 +08:00
|
|
|
volumes:
|
2026-06-24 10:47:16 +08:00
|
|
|
- ./data:/data
|
2026-06-16 10:52:04 +08:00
|
|
|
- ./mail:/var/mail/vhosts:ro
|
2026-06-24 10:47:16 +08:00
|
|
|
# 生产环境如需第三方客户端校验证书,请取消下面挂载的注释,并在 .env 配置:
|
|
|
|
|
# LANQIN_TLS_CERT_FILE=/certs/fullchain.pem
|
|
|
|
|
# LANQIN_TLS_KEY_FILE=/certs/privkey.pem
|
|
|
|
|
# - /etc/letsencrypt/live/${LANQIN_PUBLIC_HOSTNAME}:/certs:ro
|
|
|
|
|
ports:
|
|
|
|
|
- "465:465"
|
|
|
|
|
- "587:587"
|
2026-06-15 00:57:34 +08:00
|
|
|
depends_on:
|
|
|
|
|
- dovecot
|
|
|
|
|
- postfix
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
|
|
|
|
|
web:
|
2026-08-03 16:16:20 +08:00
|
|
|
image: ${LANQIN_WEB_IMAGE:-ghcr.io/zxyszx/newszxcn-email-web:latest}
|
2026-06-15 00:57:34 +08:00
|
|
|
restart: unless-stopped
|
|
|
|
|
|
|
|
|
|
nginx:
|
|
|
|
|
image: nginx:1.27-alpine
|
|
|
|
|
volumes:
|
|
|
|
|
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
|
|
|
|
|
ports:
|
|
|
|
|
- "80:80"
|
|
|
|
|
- "443:443"
|
|
|
|
|
depends_on:
|
|
|
|
|
- api
|
|
|
|
|
- web
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
|
|
|
|
|
postfix:
|
2026-08-03 16:16:20 +08:00
|
|
|
image: ${LANQIN_POSTFIX_IMAGE:-ghcr.io/zxyszx/newszxcn-email-postfix:latest}
|
2026-06-15 00:57:34 +08:00
|
|
|
env_file: .env
|
|
|
|
|
volumes:
|
2026-06-16 10:52:04 +08:00
|
|
|
- ./data:/data
|
|
|
|
|
- ./mail:/var/mail/vhosts
|
2026-06-17 00:05:23 +08:00
|
|
|
# 生产环境如需第三方客户端校验证书,请取消下面挂载,并在 .env 配置:
|
|
|
|
|
# - /etc/letsencrypt:/etc/letsencrypt:ro
|
2026-06-15 00:57:34 +08:00
|
|
|
ports:
|
|
|
|
|
- "25:25"
|
|
|
|
|
depends_on:
|
|
|
|
|
- dovecot
|
2026-06-15 23:41:21 +08:00
|
|
|
- rspamd
|
2026-06-15 00:57:34 +08:00
|
|
|
restart: unless-stopped
|
|
|
|
|
|
|
|
|
|
dovecot:
|
2026-08-03 16:16:20 +08:00
|
|
|
image: ${LANQIN_DOVECOT_IMAGE:-ghcr.io/zxyszx/newszxcn-email-dovecot:latest}
|
2026-06-15 00:57:34 +08:00
|
|
|
env_file: .env
|
|
|
|
|
volumes:
|
2026-06-16 10:52:04 +08:00
|
|
|
- ./data:/data
|
|
|
|
|
- ./mail:/var/mail/vhosts
|
2026-06-17 00:05:23 +08:00
|
|
|
# 生产环境如需第三方客户端校验证书,请取消下面挂载,并在 .env 配置:
|
|
|
|
|
# LANQIN_TLS_CERT_FILE=/etc/letsencrypt/live/mail.example.com/fullchain.pem
|
|
|
|
|
# LANQIN_TLS_KEY_FILE=/etc/letsencrypt/live/mail.example.com/privkey.pem
|
|
|
|
|
# - /etc/letsencrypt:/etc/letsencrypt:ro
|
2026-06-15 00:57:34 +08:00
|
|
|
ports:
|
|
|
|
|
- "993:993"
|
2026-06-16 23:15:35 +08:00
|
|
|
- "995:995"
|
2026-06-15 00:57:34 +08:00
|
|
|
restart: unless-stopped
|
|
|
|
|
|
2026-06-15 23:41:21 +08:00
|
|
|
rspamd:
|
2026-08-03 16:16:20 +08:00
|
|
|
image: ${LANQIN_RSPAMD_IMAGE:-ghcr.io/zxyszx/newszxcn-email-rspamd:latest}
|
2026-06-15 00:57:34 +08:00
|
|
|
env_file: .env
|
|
|
|
|
volumes:
|
2026-06-16 10:52:04 +08:00
|
|
|
- ./data:/data:ro
|
|
|
|
|
- ./dkim:/var/lib/rspamd/dkim
|
2026-06-15 00:57:34 +08:00
|
|
|
restart: unless-stopped
|