infrastructure/ansible/roles/pve_docker/files/synapse/docker-compose.yml
Jake Howard 4e5fa59c58
Add redis
This isn't really used as a cache, but it is for a couple bits, so nice to enable it anyway, and it might become so in future
2021-06-12 18:53:50 +01:00

49 lines
1.5 KiB
YAML

version: "2.3"
services:
synapse:
image: matrixdotorg/synapse:v1.35.1
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
expose:
- 8008
labels:
- traefik.enable=true
- traefik.http.routers.synapse.rule=Host(`matrix.jakehoward.tech`)
- traefik.http.routers.synapse.tls.certresolver=le
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.routers.synapse-admin.tls.certresolver=le
- traefik.http.middlewares.synapse-admin-path.stripprefix.prefixes=/admin
- traefik.http.routers.synapse-admin.middlewares=synapse-admin-path@docker