55 lines
2 KiB
YAML
55 lines
2 KiB
YAML
# {{ ansible_managed }}
|
|
version: '3.3'
|
|
|
|
services:
|
|
roundcubemail:
|
|
image: roundcube/roundcubemail:1.5.2-apache
|
|
restart: always
|
|
depends_on:
|
|
- roundcubedb
|
|
links:
|
|
- roundcubedb
|
|
volumes:
|
|
- {{ docker_roundcube_data_dir }}/{{ docker_roundcube_service_id }}/roundcube_www:/var/www/html
|
|
- ./config/:/var/roundcube/config/
|
|
- ./php.ini:/usr/local/etc/php/php.ini
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=traefik"
|
|
- "traefik.http.routers.{{ docker_roundcube_service_id }}.entrypoints=web"
|
|
- "traefik.http.routers.{{ docker_roundcube_service_id }}.rule=Host(`{{ docker_roundcube_fqdn }}`)"
|
|
- "traefik.http.services.{{ docker_roundcube_service_id }}.loadbalancer.server.port=80"
|
|
networks:
|
|
- roundcube
|
|
- traefik
|
|
environment:
|
|
- ROUNDCUBEMAIL_DB_TYPE=pgsql
|
|
- ROUNDCUBEMAIL_DB_HOST=roundcubedb
|
|
- ROUNDCUBEMAIL_DB_NAME={{ docker_roundcube_db_name }}
|
|
- ROUNDCUBEMAIL_DB_USER={{ docker_roundcube_db_user }}
|
|
- ROUNDCUBEMAIL_DB_PASSWORD={{ docker_roundcube_db_password }}
|
|
- ROUNDCUBEMAIL_SKIN=elastic
|
|
- ROUNDCUBEMAIL_DEFAULT_HOST=ssl://{{ docker_roundcube_mail_server }}
|
|
- ROUNDCUBEMAIL_SMTP_SERVER=tls://{{ docker_roundcube_mail_server }}
|
|
- ROUNDCUBEMAIL_UPLOAD_MAX_FILESIZE={{ docker_roundcube_maxfilesize }}
|
|
- ROUNDCUBEMAIL_PLUGINS={{ docker_roundcube_plugins }}
|
|
- ROUNDCUBEMAIL_ASPELL_DICTS={{ docker_roundcube_aspell_dicts }}
|
|
|
|
roundcubedb:
|
|
image: postgres:13
|
|
restart: always
|
|
volumes:
|
|
- /etc/timezone:/etc/timezone
|
|
- {{ docker_roundcube_data_dir }}/{{ docker_roundcube_service_id }}/roundcube_db/postgres:/var/lib/postgresql/data
|
|
networks:
|
|
- roundcube
|
|
environment:
|
|
- POSTGRES_DB={{ docker_roundcube_db_name }}
|
|
- POSTGRES_USER={{ docker_roundcube_db_user }}
|
|
- POSTGRES_PASSWORD={{ docker_roundcube_db_password }}
|
|
|
|
networks:
|
|
traefik:
|
|
external: true
|
|
roundcube:
|
|
internal: true
|