| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- services:
- mailserver:
- image: hardware/mailserver:1.1-stable
- container_name: mailserver_mailserver
- restart: unless-stopped
- domainname: odamus.com
- hostname: mail
- ports:
- - "25:25"
- - "110:110"
- - "143:143"
- - "465:465"
- - "587:587"
- - "993:993"
- - "995:995"
- - "4190:4190"
- - "11334:11334"
- environment:
- - FQDN=mail.odamus.com
- - DOMAIN=odamus.com
- - DBDRIVER=pgsql
- - DBUSER=odamus_mail
- - DBNAME=postfix
- - DBPORT=5432
- - DBHOST=postgres_simple
- - DBPASS=2olT5bpUj2lJUhY8eYxvcqFIx4KB2m
- - RSPAMD_PASSWORD=PvA7Nuk54P4iuXhOKbZJ4UpR3yz6Sk
- - ADD_DOMAINS=nuuditalu.ee
- - ENABLE_POP3=true
- - ENABLE_FETCHMAIL=true
- - DISABLE_RSPAMD_MODULE=true
- - DISABLE_CLAMAV=true
- - RSPAMD_CONTROLLER_BIND=127.0.0.1:11334
- - RSPAMD_SECURE_IP=127.0.0.1
- - RSPAMD_ENABLE_PASSWORD=PvA7Nuk54P4iuXhOKbZJ4UpR3yz6Sk
- - RSPAMD_WWWDIR=/usr/share/rspamd/www
- volumes:
- - mailserver_mail:/var/mail
- - /etc/localtime:/etc/localtime:ro
- - mailserver_backups:/srv/backups
- - mailserver_ssl:/ssl
- - traefik_certs:/etc/letsencrypt/acme:ro
- - ./configs/postfix_custom_conf:/var/mail/postfix/custom.conf:ro
- - ./configs/postfix_sender_access:/var/mail/postfix/sender_access:ro
- - ./configs/dumpcerts_traefik:/usr/local/bin/dumpcerts.traefik.v2.sh:ro
- - ./configs/certs_helper:/usr/local/bin/certs_helper.sh:ro
- - ./configs/run_sh:/usr/local/bin/run.sh:ro
- networks:
- - traefik-network
- - db-migration
- labels:
- - "traefik.enable=true"
- - traefik.docker.network=traefik-network
- - traefik.constraint-label=traefik-network
- - traefik.http.routers.mailserver-http.middlewares=http-to-https
- - traefik.http.routers.mailserver-https.rule=Host(`spam.odamus.com`)
- - traefik.http.routers.mailserver-https.entrypoints=websecure
- - traefik.http.routers.mailserver-http.rule=Host(`spam.odamus.com`)
- - traefik.http.routers.mailserver-http.entrypoints=web
- - "traefik.http.routers.mailserver-https.tls.certresolver=mychallenge"
- - traefik.http.services.mailserver.loadbalancer.server.port=11334
- - traefik.port=11334
- postfixadmin:
- image: hardware/postfixadmin
- container_name: mailserver_postfixadmin
- restart: unless-stopped
- environment:
- - DBDRIVER=pgsql
- - DBUSER=odamus_mail
- - DBNAME=postfix
- - DBPORT=5432
- - DBHOST=postgres_simple
- - DBPASS=2olT5bpUj2lJUhY8eYxvcqFIx4KB2m
- - DOMAIN=odamus.com
- volumes:
- - mailserver_postfixadmin:/postfixadmin
- - /etc/localtime:/etc/localtime
- - mailserver_backups:/srv/backups
- networks:
- - traefik-network
- - db-migration
- labels:
- - "traefik.enable=true"
- - traefik.docker.network=traefik-network
- - traefik.constraint-label=traefik-network
- - traefik.http.routers.postfixadmin-http.middlewares=http-to-https
- - traefik.http.routers.postfixadmin-https.rule=Host(`postfixadmin.odamus.com`)
- - traefik.http.routers.postfixadmin-https.entrypoints=websecure
- - traefik.http.routers.postfixadmin-http.rule=Host(`postfixadmin.odamus.com`)
- - traefik.http.routers.postfixadmin-http.entrypoints=web
- - "traefik.http.routers.postfixadmin-https.tls.certresolver=mychallenge"
- - traefik.http.services.postfixadmin.loadbalancer.server.port=8888
- rainloop:
- image: hardware/rainloop
- container_name: mailserver_rainloop
- restart: unless-stopped
- volumes:
- - mailserver_rainloop:/rainloop/data
- - /etc/localtime:/etc/localtime
- - mailserver_backups:/srv/backups
- networks:
- - traefik-network
- labels:
- - "traefik.enable=true"
- - traefik.docker.network=traefik-network
- - traefik.constraint-label=traefik-network
- - traefik.http.routers.webmail-http.middlewares=http-to-https
- - traefik.http.routers.webmail-https.rule=Host(`webmail.odamus.com`)
- - traefik.http.routers.webmail-https.entrypoints=websecure
- - traefik.http.routers.webmail-http.rule=Host(`webmail.odamus.com`)
- - traefik.http.routers.webmail-http.entrypoints=web
- - "traefik.http.routers.webmail-https.tls.certresolver=mychallenge"
- - traefik.http.services.webmail.loadbalancer.server.port=8888
- mta:
- image: nginx:latest
- container_name: mailserver_mta
- restart: unless-stopped
- volumes:
- - /etc/localtime:/etc/localtime
- - mailserver_html:/usr/share/nginx/html
- - mailserver_backups:/srv/backups
- networks:
- - traefik-network
- labels:
- - "traefik.enable=true"
- - traefik.docker.network=traefik-network
- - traefik.constraint-label=traefik-network
- - traefik.http.routers.mta-sts-https.rule=Host(`mta-sts.odamus.com`)
- - traefik.http.routers.mta-sts-https.entrypoints=websecure
- - traefik.http.routers.mta-sts-http.rule=Host(`mta-sts.odamus.com`)
- - traefik.http.routers.mta-sts-http.entrypoints=web
- - "traefik.http.routers.mta-sts-https.tls.certresolver=mychallenge"
- - traefik.http.services.mta-sts.loadbalancer.server.port=80
- - traefik.http.routers.mta-sts-http.service=mta-sts
- - traefik.http.routers.mta-sts-https.service=mta-sts
- - traefik.http.routers.mail-odamus-https.rule=Host(`mail.odamus.com`)
- - traefik.http.routers.mail-odamus-https.entrypoints=websecure
- - traefik.http.routers.mail-odamus-http.rule=Host(`mail.odamus.com`)
- - traefik.http.routers.mail-odamus-http.entrypoints=web
- - "traefik.http.routers.mail-odamus-https.tls.certresolver=mychallenge"
- - traefik.http.services.mail-odamus.loadbalancer.server.port=80
- - traefik.http.routers.mail-odamus-http.service=mta-sts
- - traefik.http.routers.mail-odamus-https.service=mta-sts
- volumes:
- mailserver_mail:
- external: true
- mailserver_backups:
- external: true
- mailserver_ssl:
- external: true
- mailserver_postfixadmin:
- external: true
- mailserver_rainloop:
- external: true
- mailserver_html:
- external: true
- traefik_certs:
- external: true
- networks:
- traefik-network:
- external: true
- db-migration:
- external: true
|