app-store/apps/stalwart-mail/docker-compose.yml

44 lines
2.0 KiB
YAML

version: "3.7"
services:
stalwart-mail:
image: stalwartlabs/mail-server:v0.8.2
container_name: stalwart-mail
volumes:
- ${APP_DATA_DIR}/data:/opt/stalwart-mail
restart: unless-stopped
networks:
- tipi_main_network
ports:
- ${NETWORK_INTERFACE:-0.0.0.0}:25:25/tcp
- ${NETWORK_INTERFACE:-0.0.0.0}:143:143/tcp
- ${NETWORK_INTERFACE:-0.0.0.0}:465:465/tcp
- ${NETWORK_INTERFACE:-0.0.0.0}:587:587/tcp
- ${NETWORK_INTERFACE:-0.0.0.0}:993:993/tcp
- ${NETWORK_INTERFACE:-0.0.0.0}:4190:4190/tcp
- ${APP_PORT}:8080
labels:
# Main
traefik.enable: true
traefik.http.middlewares.stalwart-mail-web-redirect.redirectscheme.scheme: https
traefik.http.services.stalwart-mail.loadbalancer.server.port: 8080
# Web
traefik.http.routers.stalwart-mail-insecure.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.stalwart-mail-insecure.entrypoints: web
traefik.http.routers.stalwart-mail-insecure.service: stalwart-mail
traefik.http.routers.stalwart-mail-insecure.middlewares: stalwart-mail-web-redirect
# Websecure
traefik.http.routers.stalwart-mail.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.stalwart-mail.entrypoints: websecure
traefik.http.routers.stalwart-mail.service: stalwart-mail
traefik.http.routers.stalwart-mail.tls.certresolver: myresolver
# Local domain
traefik.http.routers.stalwart-mail-local-insecure.rule: Host(`stalwart-mail.${LOCAL_DOMAIN}`)
traefik.http.routers.stalwart-mail-local-insecure.entrypoints: web
traefik.http.routers.stalwart-mail-local-insecure.service: stalwart-mail
traefik.http.routers.stalwart-mail-local-insecure.middlewares: stalwart-mail-web-redirect
# Local domain secure
traefik.http.routers.stalwart-mail-local.rule: Host(`stalwart-mail.${LOCAL_DOMAIN}`)
traefik.http.routers.stalwart-mail-local.entrypoints: websecure
traefik.http.routers.stalwart-mail-local.service: stalwart-mail
traefik.http.routers.stalwart-mail-local.tls: true