services: postfix: image: "mailnode" pull_policy: "never" build: context: "." args: # CONFIGURE ME! # The FQDN this mail server identifies itself as HOSTNAME: "mail.YOUR-DOMAIN.example" # All domain names this server accepts mail for (comma separated) VIRTUAL_DOMAINS: "YOUR-DOMAIN.example" restart: "always" volumes: - "certs:/etc/certs:ro" - "mail:/var/mail" - "postfix:/var/spool/postfix" - "mlmmj:/var/spool/mlmmj" - "dkim:/opendkim" ports: - "25:25" - "465:465" command: ["/etc/postfix/entrypoint.sh"] dovecot: image: "mailnode" pull_policy: "never" restart: "always" volumes: - "certs:/etc/certs:ro" - "mail:/var/mail" - "postfix:/var/spool/postfix" ports: - "993:993" networks: - "nginx-proxy-network" environment: # CONFIGURE ME! # We expect to utilize nginxproxy (proxy-docker) to create our TLS # certificates. This also allows other web services to operate on the # same host. Set the domain (common name) to generate certs for below # (typically the same value used for HOSTNAME above). VIRTUAL_HOST: "mail.YOUR-DOMAIN.example" LETSENCRYPT_HOST: "mail.YOUR-DOMAIN.example" command: ["/usr/sbin/dovecot", "-F"] mlmmj-maint: image: "mailnode" pull_policy: "never" restart: "always" volumes: - "mlmmj:/var/spool/mlmmj" command: ["bash", "-c", "/usr/bin/mlmmj-maintd -d /var/spool/mlmmj && sleep infinity"] opendkim: image: "mailnode" pull_policy: "never" restart: "always" volumes: - "dkim:/opendkim" command: ["/usr/sbin/opendkim", "-f"] volumes: certs: external: true name: "proxy-docker_certs" mail: postfix: mlmmj: dkim: networks: nginx-proxy-network: external: true