Skip to main content

Create docker-compose.yml

 Create docker-compose.yml and post bellow text (make sure you removed quote from begging)

# 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:
  - "/opt/mailu/redis:/data"
  depends_on:
  - resolver
  dns:
  - 192.168.203.254

  # Core services
  front:
  image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}nginx:${MAILU_VERSION:-master}
  restart: always
  env_file: mailu.env
  logging:
  driver: journald
  options:
  tag: mailu-front
  ports:
  - "127.0.0.1:9080:80"
  - "127.0.0.1:9443:443"
  - "0.0.0.0:25:25"
  - "0.0.0.0:465:465"
  - "127.0.0.1:587:587"
  - "127.0.0.1:110:110"
  - "127.0.0.1:995:995"
  - "127.0.0.1:143:143"
  - "0.0.0.0:993:993"
  - "127.0.0.1:4190:4190"
  networks:
  - default
  - webmail
  - radicale
  volumes:
  - "/opt/mailu/certs:/certs"
  - "/opt/mailu/overrides/nginx:/overrides:ro"
  depends_on:
  - resolver
  dns:
  - 192.168.203.254
  environment:
  VIRTUAL_HOST: mail.hrdtechnology.com
  LETSENCRYPT_HOST: mail.hrdtechnology.com

  resolver:
  image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}unbound:${MAILU_VERSION:-master}
  env_file: mailu.env
  logging:
  driver: journald
  options:
  tag: mailu-resolver
  restart: always
  networks:
  default:
  ipv4_address: 192.168.203.254

  admin:
  image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}admin:${MAILU_VERSION:-master}
  restart: always
  env_file: mailu.env
  logging:
  driver: journald
  options:
  tag: mailu-admin
  volumes:
  - "/opt/mailu/data:/data"
  - "/opt/mailu/dkim:/dkim"
  depends_on:
  - redis
  - resolver
  dns:
  - 192.168.203.254

  imap:
  image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}dovecot:${MAILU_VERSION:-master}
  restart: always
  env_file: mailu.env
  logging:
  driver: journald
  options:
  tag: mailu-imap
  volumes:
  - "/opt/mailu/mail:/mail"
  - "/opt/mailu/overrides/dovecot:/overrides:ro"
  networks:
  - default
  depends_on:
  - front
  - resolver
  dns:
  - 192.168.203.254

  smtp:
  image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}postfix:${MAILU_VERSION:-master}
  restart: always
  env_file: mailu.env
  logging:
  driver: journald
  options:
  tag: mailu-smtp
  volumes:
  - "/opt/mailu/mailqueue:/queue"
  - "/opt/mailu/overrides/postfix:/overrides:ro"
  depends_on:
  - front
  - resolver
  dns:
  - 192.168.203.254

  oletools:
  image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}oletools:${MAILU_VERSION:-master}
  hostname: oletools
  logging:
  driver: journald
  options:
  tag: mailu-oletools
  restart: always
  networks:
  - oletools
  depends_on:
  - resolver
  dns:
  - 192.168.203.254


  antispam:
  image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}rspamd:${MAILU_VERSION:-master}
  hostname: antispam
  restart: always
  env_file: mailu.env
  logging:
  driver: journald
  options:
  tag: mailu-antispam
  networks:
  - default
  - oletools
  volumes:
  - "/opt/mailu/filter:/var/lib/rspamd"
  - "/opt/mailu/overrides/rspamd:/overrides:ro"
  depends_on:
  - front
  - redis
  - oletools
  - resolver
  dns:
  - 192.168.203.254

  # Optional services

  webdav:
  image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}radicale:${MAILU_VERSION:-master}
  restart: always
  logging:
  driver: journald
  options:
  tag: mailu-webdav
  volumes:
  - "/opt/mailu/dav:/data"
  networks:
  - radicale

  fetchmail:
  image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}fetchmail:${MAILU_VERSION:-master}
  restart: always
  env_file: mailu.env
  logging:
  driver: journald
  options:
  tag: mailu-fetchmail
  volumes:
  - "/opt/mailu/data/fetchmail:/data"
  depends_on:
  - admin
  - smtp
  - imap
  - resolver
  dns:
  - 192.168.203.254

  # Webmail
  webmail:
  image: ${DOCKER_ORG:-ghcr.io/mailu}/${DOCKER_PREFIX:-}webmail:${MAILU_VERSION:-master}
  restart: always
  env_file: mailu.env
  logging:
  driver: journald
  options:
  tag: mailu-webmail
  volumes:
  - "/opt/mailu/webmail:/data"
  - "/opt/mailu/overrides/snappymail:/overrides:ro"
  networks:
  - webmail
  depends_on:
  - front

networks:
  default:
  driver: bridge
  ipam:
  driver: default
  config:
  - subnet: 192.168.203.0/24
  radicale:
  driver: bridge
  webmail:
  driver: bridge
  oletools:
  driver: bridge
  internal: true