60 lines
1.9 KiB
Django/Jinja
60 lines
1.9 KiB
Django/Jinja
services:
|
|
roundcube-db:
|
|
image: postgres:16-alpine
|
|
container_name: roundcube-db
|
|
restart: unless-stopped
|
|
environment:
|
|
POSTGRES_DB: roundcube
|
|
POSTGRES_USER: roundcube
|
|
POSTGRES_PASSWORD: "{{ roundcube_db_password }}"
|
|
volumes:
|
|
- {{ roundcube_data_dir }}/db:/var/lib/postgresql/data
|
|
networks:
|
|
- internal
|
|
logging:
|
|
driver: gelf
|
|
options:
|
|
gelf-address: "udp://{{ graylog_host }}:{{ graylog_gelf_port }}"
|
|
tag: "roundcube-db"
|
|
|
|
roundcube:
|
|
image: roundcube/roundcubemail:{{ roundcube_version }}
|
|
container_name: roundcube
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- roundcube-db
|
|
environment:
|
|
ROUNDCUBEMAIL_DB_TYPE: pgsql
|
|
ROUNDCUBEMAIL_DB_HOST: roundcube-db
|
|
ROUNDCUBEMAIL_DB_NAME: roundcube
|
|
ROUNDCUBEMAIL_DB_USER: roundcube
|
|
ROUNDCUBEMAIL_DB_PASSWORD: "{{ roundcube_db_password }}"
|
|
ROUNDCUBEMAIL_DEFAULT_HOST: "ssl://stalwart"
|
|
ROUNDCUBEMAIL_DEFAULT_PORT: 993
|
|
ROUNDCUBEMAIL_SMTP_SERVER: "tls://stalwart"
|
|
ROUNDCUBEMAIL_SMTP_PORT: 587
|
|
ROUNDCUBEMAIL_DES_KEY: "{{ roundcube_des_key }}"
|
|
ROUNDCUBEMAIL_PLUGINS: "archive,zipdownload,managesieve,jqueryui"
|
|
ROUNDCUBEMAIL_SKIN: "{{ roundcube_skin }}"
|
|
volumes:
|
|
- {{ roundcube_data_dir }}/config/custom.inc.php:/var/roundcube/config/custom.inc.php:ro
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.roundcube.rule=Host(`{{ roundcube_domain }}`)"
|
|
- "traefik.http.routers.roundcube.tls=true"
|
|
- "traefik.http.routers.roundcube.tls.certresolver=letsencrypt"
|
|
- "traefik.http.services.roundcube.loadbalancer.server.port=80"
|
|
networks:
|
|
- internal
|
|
- {{ sovereign_network_name }}
|
|
logging:
|
|
driver: gelf
|
|
options:
|
|
gelf-address: "udp://{{ graylog_host }}:{{ graylog_gelf_port }}"
|
|
tag: "roundcube"
|
|
|
|
networks:
|
|
internal:
|
|
{{ sovereign_network_name }}:
|
|
external: true
|