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

56 lines
1.4 KiB
YAML

version: "2.3"
services:
synapse:
image: matrixdotorg/synapse:v1.104.0
restart: unless-stopped
environment:
- SYNAPSE_CONFIG_PATH=/etc/homeserver.yaml
- SYNAPSE_REPORT_STATS=yes
- UID={{ docker_user.id }}
- GID={{ docker_user.id }}
- HTTP_PROXY={{ pve_hosts.qbittorrent.ip }}:3128
- HTTPS_PROXY={{ pve_hosts.qbittorrent.ip }}:3128
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`)
networks:
- default
- traefik
db:
image: postgres:16-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/speed/dbs/postgres/synapse:/var/lib/postgresql/data
redis:
image: redis:7-alpine
restart: unless-stopped
volumes:
- /mnt/speed/dbs/redis/synapse:/data
admin:
image: awesometechnologies/synapse-admin:latest
restart: unless-stopped
labels:
- traefik.enable=true
- traefik.http.routers.synapse-admin.rule=Host(`synapse-admin.jakehoward.tech`)
networks:
- default
- traefik
networks:
traefik:
external: true