ansible-role-docker_etherpad/templates/docker-compose.yml

54 lines
1.8 KiB
YAML

# {{ ansible_managed }}
version: '3.5'
services:
etherpad:
image: git.libretic.fr/libretic/etherpad:{{ docker_etherpad_version }}
restart: always
environment:
DB_TYPE: postgres
DB_HOST: db
DB_PORT: 5432
DB_NAME: "{{ docker_etherpad_db_name }}"
DB_USER: "{{ docker_etherpad_db_user }}"
DB_PASS: "{{ docker_etherpad_db_password }}"
ADMIN_PASSWORD: "{{ docker_etherpad_admin_password }}"
DEFAULT_PAD_TEXT: "{{ docker_etherpad_default_pad_text }}"
DELETE_AFTER_DELAY: "{{ docker_etherpad_delete_after_delay }}"
DELETE_LOOP: "{{ docker_etherpad_delete_loop }}"
DELETE_LOOP_DELAY: "{{ docker_etherpad_delete_loop_delay }}"
DELETE_AT_START: "{{ docker_etherpad_delete_at_start }}"
DELETE_TEXT: "{{ docker_etherpad_delete_text }}"
labels:
- "traefik.enable=true"
- "traefik.docker.network=traefik"
- "traefik.http.routers.{{ docker_etherpad_service_id }}.entrypoints=web"
- "traefik.http.routers.{{ docker_etherpad_service_id }}.rule=Host(`{{ docker_etherpad_fqdn }}`)"
- "traefik.http.services.{{ docker_etherpad_service_id }}.loadbalancer.server.port=9001"
depends_on:
- db
networks:
- traefik
- etherpad
db:
restart: always
image: postgres:14
shm_size: 256mb
networks:
- etherpad
healthcheck:
test: ['CMD', 'pg_isready', '-U', 'postgres']
volumes:
- {{ docker_etherpad_data_dir }}/{{ docker_etherpad_service_id }}/db_data:/var/lib/postgresql/data
environment:
POSTGRES_DB: "{{ docker_etherpad_db_name }}"
POSTGRES_USER: "{{ docker_etherpad_db_user }}"
POSTGRES_PASSWORD: "{{ docker_etherpad_db_password }}"
networks:
traefik:
external: true
etherpad:
internal: true