Files
mailu/docker-compose.yml

129 lines
2.5 KiB
YAML

services:
front:
image: ghcr.io/mailu/nginx:$VERSION
restart: always
env_file: .env
logging:
driver: journald
options:
tag: mailu-front
ports:
- "80:80"
- "443:443"
volumes:
- "$ROOT/certs:/certs"
- "$ROOT/overrides/nginx:/overrides:ro"
redis:
image: redis:alpine
restart: always
volumes:
- "$ROOT/redis:/data"
imap:
image: ghcr.io/mailu/dovecot:$VERSION
restart: always
env_file: .env
logging:
driver: journald
options:
tag: mailu-imap
volumes:
- "$ROOT/mail:/mail"
- "$ROOT/overrides/dovecot:/overrides:ro"
depends_on:
- front
ports:
- "110:110"
- "143:143"
- "993:993"
- "995:995"
# network_mode: service:front
smtp:
image: ghcr.io/mailu/postfix:$VERSION
restart: always
env_file: .env
logging:
driver: journald
options:
tag: mailu-smtp
volumes:
- "$ROOT/mailqueue:/queue"
- "$ROOT/overrides/postfix:/overrides:ro"
depends_on:
- front
ports:
- "25:25"
- "465:465"
- "587:587"
# network_mode: service:front
antispam:
image: ghcr.io/mailu/rspamd:$VERSION
restart: always
env_file: .env
logging:
driver: journald
options:
tag: mailu-antispam
volumes:
- "$ROOT/filter:/var/lib/rspamd"
- "$ROOT/dkim:/dkim"
- "$ROOT/overrides/rspamd:/etc/rspamd/override.d"
depends_on:
- front
antivirus:
image: ghcr.io/mailu/$ANTIVIRUS:$VERSION
restart: always
env_file: .env
volumes:
- "$ROOT/filter:/data"
# webdav:
# image: ghcr.io/mailu/$WEBDAV:$VERSION
# restart: always
# env_file: .env
# volumes:
# - "$ROOT/dav:/data"
admin:
image: ghcr.io/mailu/admin:$VERSION
restart: always
env_file: .env
logging:
driver: journald
options:
tag: mailu-admin
volumes:
- "$ROOT/data:/data"
- "$ROOT/dkim:/dkim"
depends_on:
- redis
# network_mode: service:front
webmail:
image: ghcr.io/mailu/$WEBMAIL:$VERSION
restart: always
env_file: .env
volumes:
- "$ROOT/webmail:/data"
- "$ROOT/overrides/$WEBMAIL:/overrides:ro"
depends_on:
- imap
# network_mode: service:front
fetchmail:
image: ghcr.io/mailu/fetchmail:$VERSION
restart: always
env_file: .env
networks:
default:
driver: bridge
ipam:
driver: default
config:
- subnet: $SUBNET