# This file is auto-generated by the Mailu configuration wizard. # Please read the documentation before attempting any change. # Generated for compose flavor services: # External dependencies redis: image: redis:alpine restart: always volumes: - "/mailu/redis:/data" depends_on: - resolver dns: - 10.0.1.254 # Core services front: image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}nginx:${MAILU_VERSION:-2024.06} restart: always env_file: mailu.env logging: driver: journald options: tag: mailu-front ports: - "192.168.5.16:80:80" - "192.168.5.16:443:443" - "192.168.5.16:25:25" - "192.168.5.16:465:465" - "192.168.5.16:587:587" - "192.168.5.16:110:110" - "192.168.5.16:995:995" - "192.168.5.16:143:143" - "192.168.5.16:993:993" - "192.168.5.16:4190:4190" networks: - default volumes: - "/mailu/certs:/certs" - "/mailu/overrides/nginx:/overrides:ro" depends_on: - resolver dns: - 10.0.1.254 resolver: image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}unbound:${MAILU_VERSION:-2024.06} env_file: mailu.env logging: driver: journald options: tag: mailu-resolver restart: always networks: default: ipv4_address: 10.0.1.254 admin: image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}admin:${MAILU_VERSION:-2024.06} restart: always env_file: mailu.env logging: driver: journald options: tag: mailu-admin volumes: - "/mailu/data:/data" - "/mailu/dkim:/dkim" depends_on: - redis - resolver dns: - 10.0.1.254 imap: image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}dovecot:${MAILU_VERSION:-2024.06} restart: always env_file: mailu.env logging: driver: journald options: tag: mailu-imap volumes: - "/mailu/mail:/mail" - "/mailu/overrides/dovecot:/overrides:ro" networks: - default - fts_attachments depends_on: - front - fts_attachments - resolver dns: - 10.0.1.254 smtp: image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}postfix:${MAILU_VERSION:-2024.06} restart: always env_file: mailu.env logging: driver: journald options: tag: mailu-smtp volumes: - "/mailu/mailqueue:/queue" - "/mailu/overrides/postfix:/overrides:ro" depends_on: - front - resolver dns: - 10.0.1.254 oletools: image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}oletools:${MAILU_VERSION:-2024.06} hostname: oletools logging: driver: journald options: tag: mailu-oletools restart: always networks: - oletools depends_on: - resolver dns: - 10.0.1.254 fts_attachments: image: apache/tika:2.9.2.1-full hostname: tika logging: driver: journald options: tag: mailu-tika restart: always networks: - fts_attachments depends_on: - resolver dns: - 10.0.1.254 healthcheck: test: ["CMD-SHELL", "wget -nv -t1 -O /dev/null http://127.0.0.1:9998/tika || exit 1"] interval: 10s timeout: 5s retries: 3 start_period: 10s antispam: image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}rspamd:${MAILU_VERSION:-2024.06} hostname: antispam restart: always env_file: mailu.env logging: driver: journald options: tag: mailu-antispam networks: - default - oletools - clamav volumes: - "/mailu/filter:/var/lib/rspamd" - "/mailu/overrides/rspamd:/overrides:ro" depends_on: - front - redis - oletools - antivirus - resolver dns: - 10.0.1.254 # Optional services antivirus: image: clamav/clamav-debian:1.2.3-45 restart: always logging: driver: journald options: tag: mailu-antivirus networks: - clamav volumes: - "/mailu/filter/clamav:/var/lib/clamav" healthcheck: test: ["CMD-SHELL", "kill -0 `cat /tmp/clamd.pid` && kill -0 `cat /tmp/freshclam.pid`"] interval: 10s timeout: 5s retries: 3 start_period: 10s # Webmail networks: default: driver: bridge ipam: driver: default config: - subnet: 10.0.1.0/24 clamav: driver: bridge oletools: driver: bridge internal: true fts_attachments: driver: bridge internal: true