Files
ansible2/roles/vps/templates/docker-compose.mailu.yaml.j2
Martin Eichner 8d5852a4fa init
2023-06-27 17:36:56 +02:00

149 lines
3.4 KiB
Django/Jinja

# This file is auto-generated by the Mailu configuration wizard.
# Please read the documentation before attempting any change.
# Generated for compose flavor
version: '3.6'
services:
# External dependencies
redis:
image: redis:alpine
restart: always
volumes:
- "./redis:/data"
# Core services
front:
image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}nginx:${MAILU_VERSION:-1.7}
restart: always
env_file: mailu.env
logging:
driver: json-file
ports:
- target: 25
published: 25
- target: 465
published: 465
- target: 587
published: 587
- target: 110
published: 110
- target: 995
published: 995
- target: 143
published: 143
- target: 993
published: 993
volumes:
- "./certs:/certs"
- "./overrides/nginx:/overrides"
- "./static:/static"
networks:
- traefik
- default
labels:
traefik.enable: "true"
traefik.port: "80"
traefik.frontend.rule: "Host:mail.eichner.cc"
traefik.docker.network: "traefik"
certdumper:
image: mailu/traefik-certdumper:${MAILU_VERSION:-1.7}
env_file: mailu.env
environment:
- DOMAIN=mail.eichner.cc
volumes:
- "/etc/traefik/acme/acme.json:/traefik/acme.json"
- "./certs:/output"
database:
image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}postgresql:${MAILU_VERSION:-1.7}
restart: always
env_file: mailu.env
volumes:
- "./data/psql_db:/data"
- "./data/psql_backup:/backup"
admin:
image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}admin:${MAILU_VERSION:-1.7}
restart: always
env_file: mailu.env
volumes:
- "./data:/data"
- "./dkim:/dkim"
depends_on:
- redis
imap:
image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}dovecot:${MAILU_VERSION:-1.7}
restart: always
env_file: mailu.env
volumes:
- "./mail:/mail"
- "./overrides:/overrides"
depends_on:
- front
smtp:
image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}postfix:${MAILU_VERSION:-1.7}
restart: always
env_file: mailu.env
volumes:
- "./overrides:/overrides"
depends_on:
- front
antispam:
image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}rspamd:${MAILU_VERSION:-1.7}
restart: always
env_file: mailu.env
volumes:
- "./filter:/var/lib/rspamd"
- "./dkim:/dkim"
- "./overrides/rspamd:/etc/rspamd/override.d"
- "./rspamd/local.d:/etc/rspamd/local.d"
depends_on:
- front
# Optional services
antivirus:
image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}clamav:${MAILU_VERSION:-1.7}
restart: always
env_file: mailu.env
volumes:
- "./filter:/data"
webdav:
image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}radicale:${MAILU_VERSION:-1.7}
restart: always
env_file: mailu.env
volumes:
- "./dav:/data"
fetchmail:
image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}fetchmail:${MAILU_VERSION:-1.7}
restart: always
env_file: mailu.env
# Webmail
# webmail:
# image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}rainloop:${MAILU_VERSION:-1.7}
# restart: always
# env_file: mailu.env
# volumes:
# - "./webmail:/data"
# depends_on:
# - imap
networks:
traefik:
driver: bridge
external: true
default:
driver: bridge
ipam:
driver: default
config:
- subnet: 192.168.203.0/24