111 lines
3.1 KiB
YAML
111 lines
3.1 KiB
YAML
services:
|
|
stalwart:
|
|
image: stalwartlabs/stalwart:v0.16@sha256:93c574e52249c1ebf90061da2c4c0756a7b72abfcc1fec34506a03c2e38b5977
|
|
container_name: ${PROJECT_NAME:-eternitymail}-stalwart
|
|
restart: unless-stopped
|
|
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
|
|
cap_drop:
|
|
- ALL
|
|
|
|
cap_add:
|
|
- NET_BIND_SERVICE
|
|
|
|
environment:
|
|
STALWART_RECOVERY_ADMIN: ${STALWART_RECOVERY_ADMIN}
|
|
|
|
ports:
|
|
- "${STALWART_SMTP_PORT:-25}:25/tcp"
|
|
- "${STALWART_SUBMISSION_PORT:-587}:587/tcp"
|
|
- "${STALWART_IMAPS_PORT:-993}:993/tcp"
|
|
- "${STALWART_ADMIN_BIND-127.0.0.1}:${STALWART_ADMIN_PORT:-8081}:8080/tcp"
|
|
|
|
volumes:
|
|
- ${DATA_ROOT:-/opt/eternitymail}/stalwart/etc:/etc/stalwart
|
|
- ${DATA_ROOT:-/opt/eternitymail}/stalwart/data:/var/lib/stalwart
|
|
- ${DATA_ROOT:-/opt/eternitymail}/stalwart/certs:/etc/stalwart/certs:ro
|
|
|
|
networks:
|
|
eternitymail:
|
|
aliases:
|
|
- ${MAIL_HOSTNAME}
|
|
|
|
|
|
roundcube-db:
|
|
image: mariadb:11.8-noble@sha256:2d2f4095530294735a857cfe22bb101e19b0849b416911c796ec4aa81b164a62
|
|
container_name: ${PROJECT_NAME:-eternitymail}-roundcube-db
|
|
restart: unless-stopped
|
|
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
|
|
environment:
|
|
MARIADB_DATABASE: ${RC_DB_NAME:-roundcube}
|
|
MARIADB_USER: ${RC_DB_USER:-roundcube}
|
|
MARIADB_PASSWORD: ${RC_DB_PASSWORD}
|
|
MARIADB_ROOT_PASSWORD: ${RC_DB_ROOT_PASSWORD}
|
|
|
|
volumes:
|
|
- ${DATA_ROOT:-/opt/eternitymail}/roundcube-db:/var/lib/mysql
|
|
|
|
networks:
|
|
- eternitymail
|
|
|
|
healthcheck:
|
|
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 10
|
|
start_period: 20s
|
|
|
|
|
|
roundcube:
|
|
image: roundcube/roundcubemail:1.7.4-apache@sha256:8a4f88846145c6c8801654d9c3b330071e162f0110b64d08af8e94aca50ffb89
|
|
container_name: ${PROJECT_NAME:-eternitymail}-roundcube
|
|
restart: unless-stopped
|
|
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
|
|
depends_on:
|
|
roundcube-db:
|
|
condition: service_healthy
|
|
|
|
ports:
|
|
- "${ROUNDCUBE_BIND-127.0.0.1}:${ROUNDCUBE_PORT:-8091}:80"
|
|
|
|
volumes:
|
|
- ${DATA_ROOT:-/opt/eternitymail}/roundcube-config:/var/roundcube/config:ro
|
|
- ${ROUNDCUBE_SKIN_PATH:-../ep-roundcube-skin/eternity}:/var/www/html/skins/${ROUNDCUBE_SKIN_NAME:-eternity}:ro
|
|
|
|
environment:
|
|
ROUNDCUBEMAIL_DB_TYPE: mysql
|
|
ROUNDCUBEMAIL_DB_HOST: roundcube-db
|
|
ROUNDCUBEMAIL_DB_PORT: 3306
|
|
ROUNDCUBEMAIL_DB_NAME: ${RC_DB_NAME:-roundcube}
|
|
ROUNDCUBEMAIL_DB_USER: ${RC_DB_USER:-roundcube}
|
|
ROUNDCUBEMAIL_DB_PASSWORD: ${RC_DB_PASSWORD}
|
|
|
|
ROUNDCUBEMAIL_DES_KEY: ${RC_DES_KEY}
|
|
|
|
ROUNDCUBEMAIL_DEFAULT_HOST: ssl://${MAIL_HOSTNAME}
|
|
ROUNDCUBEMAIL_DEFAULT_PORT: 993
|
|
|
|
ROUNDCUBEMAIL_SMTP_SERVER: tls://${MAIL_HOSTNAME}
|
|
ROUNDCUBEMAIL_SMTP_PORT: 587
|
|
|
|
ROUNDCUBEMAIL_USERNAME_DOMAIN: ${MAIL_DOMAIN}
|
|
|
|
ROUNDCUBEMAIL_SKIN: ${ROUNDCUBE_SKIN_NAME:-eternity}
|
|
ROUNDCUBEMAIL_PLUGINS: archive,zipdownload,newmail_notifier
|
|
ROUNDCUBEMAIL_UPLOAD_MAX_FILESIZE: 50M
|
|
|
|
networks:
|
|
- eternitymail
|
|
|
|
|
|
networks:
|
|
eternitymail:
|
|
name: ${PROJECT_NAME:-eternitymail} |