infrastructure/ansible/roles/pve_docker/files/synapse/docker-compose.yml

45 lines
1.3 KiB
YAML

version: "2.3"
services:
synapse:
image: matrixdotorg/synapse:v1.44.0
restart: unless-stopped
environment:
- SYNAPSE_CONFIG_PATH=/etc/homeserver.yaml
- SYNAPSE_REPORT_STATS=yes
- UID={{ docker_user.id }}
- GID={{ docker_user.id }}
volumes:
- "{{ app_data_dir }}/synapse/homeserver.yaml:/etc/homeserver.yaml"
- "{{ app_data_dir }}/synapse:/data"
depends_on:
- db
labels:
- traefik.enable=true
- traefik.http.routers.synapse.rule=Host(`matrix.jakehoward.tech`)
db:
image: postgres:12-alpine
restart: unless-stopped
environment:
- POSTGRES_USER=synapse
- POSTGRES_PASSWORD=synapse
- POSTGRES_INITDB_ARGS=--encoding=UTF-8 --lc-collate=C --lc-ctype=C
volumes:
- /mnt/tank/dbs/postgres/synapse:/var/lib/postgresql/data
redis:
image: redis:6-alpine
restart: unless-stopped
volumes:
- /mnt/tank/dbs/redis/synapse:/data
admin:
image: awesometechnologies/synapse-admin:latest
restart: unless-stopped
labels:
- traefik.enable=true
- traefik.http.routers.synapse-admin.rule=Host(`matrix.jakehoward.tech`) && PathPrefix(`/admin`)
- traefik.http.middlewares.synapse-admin-path.stripprefix.prefixes=/admin
- traefik.http.routers.synapse-admin.middlewares=synapse-admin-path@docker