diff options
Diffstat (limited to 'roles/mail/templates/docker-compose.yml.j2')
-rw-r--r-- | roles/mail/templates/docker-compose.yml.j2 | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/roles/mail/templates/docker-compose.yml.j2 b/roles/mail/templates/docker-compose.yml.j2 new file mode 100644 index 0000000..091ef78 --- /dev/null +++ b/roles/mail/templates/docker-compose.yml.j2 @@ -0,0 +1,46 @@ +services: + mailserver: + image: ghcr.io/docker-mailserver/docker-mailserver:latest + container_name: mailserver + # Provide the FQDN of your mail server here (Your DNS MX record should point to this value) + hostname: {{ domain }} + ports: + - "25:25" + - "465:465" + - "587:587" + - "993:993" + volumes: + - ./docker-data/dms/mail-data/:/var/mail/ + - ./docker-data/dms/mail-state/:/var/mail-state/ + - ./docker-data/dms/mail-logs/:/var/log/mail/ + - ./docker-data/dms/config/:/tmp/docker-mailserver/ + - /etc/letsencrypt:/etc/letsencrypt + - /etc/localtime:/etc/localtime:ro + environment: + - SSL_TYPE=letsencrypt + - ENABLE_CLAMAV=0 + - ENABLE_AMAVIS=0 + - ENABLE_FAIL2BAN=0 + - SPOOF_PROTECTION=1 + - ACCOUNT_PROVISIONER=LDAP + - LDAP_SERVER_HOST=ldap://lldap.internal.simponic.xyz:3890 + - LDAP_SEARCH_BASE=dc=simponic,dc=xyz + - LDAP_BIND_DN=uid=admin,ou=people,dc=simponic,dc=xyz + - LDAP_BIND_PW={{ lldap_admin_pass }} + + - LDAP_QUERY_FILTER_USER=(&(objectClass=mailAccount)(|(uid=%u))) + - LDAP_QUERY_FILTER_GROUP=(&(cn=mail)(uniquemember=uid=%u,ou=people,dc=simponic,dc=xyz)) + - LDAP_QUERY_FILTER_ALIAS=(&(objectClass=inetOrgPerson)(|(uid=%u)(mail=%u))) + - LDAP_QUERY_FILTER_DOMAIN=(mail=*@%s) + + - DOVECOT_AUTH_BIND=yes + - DOVECOT_USER_FILTER=(&(objectClass=inetOrgPerson)(|(uid=%u)(mail=%u))) + - DOVECOT_USER_ATTRS==uid=5000,=gid=5000,=home=/var/mail/%Ln,=mail=maildir:~/Maildir + + - ENABLE_SASLAUTHD=1 + - SASLAUTHD_MECHANISMS=rimap + - SASLAUTHD_MECH_OPTIONS=127.0.0.1 + - POSTMASTER_ADDRESS={{ postmaster_email }} + dns: + - {{ johan_ip }} + restart: always |