[Unit] Description=Stalwart Mail Wants=network-online.target Wants=traefik.service After=network-online.target [Container] ContainerName=stalwart-mail Image=docker.io/stalwartlabs/mail-server:latest Entrypoint=["/usr/local/bin/stalwart-mail", "--config", "/etc/stalwart/config.toml"] Volume=/etc/localtime:/etc/localtime:ro Volume=traefik-certs.volume:/data/certs:ro Volume=/var/opt/stalwart-mail:/opt/stalwart-mail:z,U Volume=/etc/stalwart:/etc/stalwart:ro AutoUpdate=registry Network=web.network # allow many file descriptors for rocksdb Ulimit=nofile=1048567:1048567 Label="traefik.enable=true" Label="traefik.http.routers.stalwart-mail.rule=(Host(`mail.ellis.link`) || Host(`autodiscover.ellis.link`) || Host(`autoconfig.ellis.link`) || Host(`mta-sts.ellis.link`))" Label="traefik.http.services.stalwart-mail.loadbalancer.server.port=8080" Label="traefik.http.routers.stalwart-mail.service=stalwart-mail" Label="traefik.http.routers.stalwart-mail.entrypoints=https" Label="traefik.http.routers.stalwart-mail.middlewares=default@file" Label="homepage.group=Public" Label="homepage.name=Stalwart Mail" Label="homepage.href=https://mail.ellis.link/" Label="homepage.description=AIO mail server" Label="homepage.siteMonitor=https://mail.ellis.link" Label=kuma.__monitor='' Label="traefik.tcp.routers.smtp.rule=HostSNI(`*`)" Label="traefik.tcp.routers.smtp.entrypoints=smtp" Label="traefik.tcp.routers.smtp.service=smtp" Label="traefik.tcp.services.smtp.loadbalancer.server.port=25" Label="traefik.tcp.services.smtp.loadbalancer.proxyProtocol.version=2" Label="traefik.tcp.routers.pop.rule=HostSNI(`*`)" Label="traefik.tcp.routers.pop.entrypoints=pop" Label="traefik.tcp.routers.pop.service=pop" Label="traefik.tcp.services.pop.loadbalancer.server.port=110" Label="traefik.tcp.services.pop.loadbalancer.proxyProtocol.version=2" Label="traefik.tcp.routers.managesieve.rule=HostSNI(`*`)" Label="traefik.tcp.routers.managesieve.tls.passthrough=true" Label="traefik.tcp.routers.managesieve.entrypoints=managesieve" Label="traefik.tcp.routers.managesieve.service=managesieve" Label="traefik.tcp.services.managesieve.loadbalancer.server.port=4190" Label="traefik.tcp.services.managesieve.loadbalancer.proxyProtocol.version=2" Label="traefik.tcp.routers.jmap.rule=HostSNI(`*`)" Label="traefik.tcp.routers.jmap.tls.passthrough=true" Label="traefik.tcp.routers.jmap.entrypoints=https" Label="traefik.tcp.routers.jmap.service=jmap" Label="traefik.tcp.services.jmap.loadbalancer.server.port=443" Label="traefik.tcp.services.jmap.loadbalancer.proxyProtocol.version=2" Label="traefik.tcp.routers.smtpstarttls.rule=HostSNI(`*`)" Label="traefik.tcp.routers.smtpstarttls.entrypoints=smtpstarttls" Label="traefik.tcp.routers.smtpstarttls.service=smtpstarttls" Label="traefik.tcp.services.smtpstarttls.loadbalancer.server.port=587" Label="traefik.tcp.services.smtpstarttls.loadbalancer.proxyProtocol.version=2" Label="traefik.tcp.routers.smtps.rule=HostSNI(`*`)" Label="traefik.tcp.routers.smtps.tls.passthrough=true" Label="traefik.tcp.routers.smtps.entrypoints=smtps" Label="traefik.tcp.routers.smtps.service=smtps" Label="traefik.tcp.services.smtps.loadbalancer.server.port=465" Label="traefik.tcp.services.smtps.loadbalancer.proxyProtocol.version=2" Label="traefik.tcp.routers.imaps.rule=HostSNI(`*`)" Label="traefik.tcp.routers.imaps.tls.passthrough=true" Label="traefik.tcp.routers.imaps.entrypoints=imaps" Label="traefik.tcp.routers.imaps.service=imaps" Label="traefik.tcp.services.imaps.loadbalancer.server.port=993" Label="traefik.tcp.services.imaps.loadbalancer.proxyProtocol.version=2" Label="traefik.tcp.routers.pops.rule=HostSNI(`*`)" Label="traefik.tcp.routers.pops.tls.passthrough=true" Label="traefik.tcp.routers.pops.entrypoints=pops" Label="traefik.tcp.routers.pops.service=pops" Label="traefik.tcp.services.pops.loadbalancer.server.port=995" Label="traefik.tcp.services.pops.loadbalancer.proxyProtocol.version=2" StopTimeout=100 [Service] Restart=on-failure RestartSec=5 TimeoutStopSec=2m TimeoutStartSec=2m # StartLimitInterval=1m StartLimitBurst=5 [Install] WantedBy=default.target