khuong
khuong
DDokploy
Created by khuong on 12/19/2024 in #old-help
Stalwart Mail Server
I spent some time configuring Stalwart. I can get dashboard to work but some other things like SMTP and IMAP is not working. I don't know how to get TLS certificate for a service without a domain. Please could anyone help?
services:
stalwart-mail:
image: stalwartlabs/mail-server:latest
container_name: stalwart-mail
expose:
- 25:25 # SMTP (with STARTTLS)
- 465:465 # SMTP over TLS
- 587:587 # Submission (with STARTTLS)

- 143:143 # IMAP (with STARTTLS)
- 993:993 # IMAP over TLS
- 8080:8080

volumes:
- stalwart_mail:/opt/stalwart-mail

environment:
- STALWART_DB_URI=${DB_CONNECTION_URI}
- STALWART_DB_USER=${DB_USER}
- STALWART_DB_PASSWORD=${DB_PASSWORD}
- STALWART_HOSTNAME=${STALWART_HOSTNAME}
- STALWART_DOMAIN=${DOMAIN}

restart: unless-stopped
labels:
- traefik.enable=true
# SMTP (25)
- traefik.tcp.routers.smtp.rule=HostSNI(`*`)
- traefik.tcp.routers.smtp.entrypoints=smtp
- traefik.tcp.services.smtp.loadbalancer.server.port=25

# SMTPS (465)
- traefik.tcp.routers.smtps.rule=HostSNI(`*`)
- traefik.tcp.routers.smtps.entrypoints=smtps
- traefik.tcp.routers.smtps.tls=true
- traefik.tcp.services.smtps.loadbalancer.server.port=465

# Submission (587)
- traefik.tcp.routers.submission.rule=HostSNI(`*`)
- traefik.tcp.routers.submission.entrypoints=submission
- traefik.tcp.routers.submission.tls=true
- traefik.tcp.services.submission.loadbalancer.server.port=587

# IMAPS (993)
- traefik.tcp.routers.imaps.rule=HostSNI(`*`)
- traefik.tcp.routers.imaps.entrypoints=imaps
- traefik.tcp.routers.imaps.tls=true
- traefik.tcp.services.imaps.loadbalancer.server.port=993

networks:
- dokploy-network

networks:
dokploy-network:
external: true

volumes:
stalwart_mail:
services:
stalwart-mail:
image: stalwartlabs/mail-server:latest
container_name: stalwart-mail
expose:
- 25:25 # SMTP (with STARTTLS)
- 465:465 # SMTP over TLS
- 587:587 # Submission (with STARTTLS)

- 143:143 # IMAP (with STARTTLS)
- 993:993 # IMAP over TLS
- 8080:8080

volumes:
- stalwart_mail:/opt/stalwart-mail

environment:
- STALWART_DB_URI=${DB_CONNECTION_URI}
- STALWART_DB_USER=${DB_USER}
- STALWART_DB_PASSWORD=${DB_PASSWORD}
- STALWART_HOSTNAME=${STALWART_HOSTNAME}
- STALWART_DOMAIN=${DOMAIN}

restart: unless-stopped
labels:
- traefik.enable=true
# SMTP (25)
- traefik.tcp.routers.smtp.rule=HostSNI(`*`)
- traefik.tcp.routers.smtp.entrypoints=smtp
- traefik.tcp.services.smtp.loadbalancer.server.port=25

# SMTPS (465)
- traefik.tcp.routers.smtps.rule=HostSNI(`*`)
- traefik.tcp.routers.smtps.entrypoints=smtps
- traefik.tcp.routers.smtps.tls=true
- traefik.tcp.services.smtps.loadbalancer.server.port=465

# Submission (587)
- traefik.tcp.routers.submission.rule=HostSNI(`*`)
- traefik.tcp.routers.submission.entrypoints=submission
- traefik.tcp.routers.submission.tls=true
- traefik.tcp.services.submission.loadbalancer.server.port=587

# IMAPS (993)
- traefik.tcp.routers.imaps.rule=HostSNI(`*`)
- traefik.tcp.routers.imaps.entrypoints=imaps
- traefik.tcp.routers.imaps.tls=true
- traefik.tcp.services.imaps.loadbalancer.server.port=993

networks:
- dokploy-network

networks:
dokploy-network:
external: true

volumes:
stalwart_mail:
7 replies