Files
cloudy/swarm/mailserver.yml
T

54 lines
1.5 KiB
YAML

services:
mail:
image: mailserver/docker-mailserver:latest
env_file: /var/data/docker-mailserver/docker-mailserver.env
volumes:
- /var/data/docker-mailserver/maildata:/var/mail
- /var/data/docker-mailserver/mailstate:/var/mail-state
- /var/data/docker-mailserver/config:/tmp/docker-mailserver
- /var/data/docker-mailserver/letsencrypt:/etc/letsencrypt
ports:
- target: 25
published: 25
protocol: tcp
mode: host
- target: 587
published: 587
protocol: tcp
mode: host
- target: 993
published: 993
protocol: tcp
mode: host
- target: 995
published: 995
protocol: tcp
mode: host
networks:
- internal
rainloop:
image: nerzhul/rainloop-arm64
volumes:
- /var/data/docker-mailserver/rainloop:/rainloop/data
networks:
- internal
- traefik-public
deploy:
labels:
- traefik.enable=true
- traefik.docker.network=traefik-public
- traefik.constraint-label=traefik-public
- traefik.http.routers.rainloop.entrypoints=https
- traefik.http.routers.rainloop.rule=Host(`webmail.${DOMAIN}`)
- traefik.http.routers.rainloop.tls.certresolver=le
- traefik.http.services.rainloop.loadbalancer.server.port=8888
networks:
traefik-public:
external: true
internal:
driver: overlay
ipam:
config:
- subnet: 172.16.2.0/24