dc-matrix/docker-compose.yml

84 lines
2.2 KiB
YAML

services:
synapse:
image: docker.io/matrixdotorg/synapse:v1.119.0@sha256:a18c25d7c80a226905943483840d143c7d1f7fc6c95d5911d41a5e6567971e7c
restart: unless-stopped
environment:
- SYNAPSE_CONFIG_PATH=/data/homeserver.yaml
volumes:
- files:/data
- uploads:/data/uploads
- media:/data/media
labels:
- "traefik.enable=true"
- "traefik.http.routers.matrix.rule=Host(`${DC_MATRIX_HOSTNAME:?}`)"
- "traefik.http.routers.matrix.entrypoints=websecure"
depends_on:
- db
networks:
- traefik
- matrix
db:
image: docker.io/postgres:17.2-alpine@sha256:eb37f58646a901dc7727cf448cae36daaefaba79de33b5058dab79aa4c04aefb
restart: unless-stopped
environment:
- POSTGRES_USER=${DC_MATRIX_POSTGRES_USER:-synapse}
- POSTGRES_PASSWORD=${DC_MATRIX_POSTGRES_PASSWORD:?}
- POSTGRES_DB=${DC_MATRIX_POSTGRES_DB:-synapse}
# ensure the database gets created correctly
# https://matrix-org.github.io/synapse/latest/postgres.html#set-up-database
- POSTGRES_INITDB_ARGS=--encoding=UTF-8 --lc-collate=C --lc-ctype=C
volumes:
- schemas:/var/lib/postgresql/data
networks:
- matrix
bridge-whatsapp:
container_name: whatsapp
image: dock.mau.dev/mautrix/whatsapp:v0.11.1@sha256:2ce2005070739663ec8d926636f8376fc271eed65d4d15506c21a12b4089df9e
restart: unless-stopped
volumes:
- whatsapp:/data
networks:
- matrix
depends_on:
- db
- synapse
bridge-meta:
container_name: meta
image: dock.mau.dev/mautrix/meta:v0.4.2@sha256:71a6f74640e767ee3bfa768004e74c06ed38ef8f87f6aec4d329cb9f11bbb5bb
restart: unless-stopped
volumes:
- meta:/data
networks:
- matrix
depends_on:
- db
- synapse
bridge-signal:
container_name: signal
image: dock.mau.dev/mautrix/signal:v0.7.3@sha256:6c3e3c6eb681dd2cf5fb3ba1d1f8b04a8d754ab8499f739812523d2979f7144c
restart: unless-stopped
volumes:
- signal:/data
networks:
- matrix
depends_on:
- db
- synapse
volumes:
files:
uploads:
media:
schemas:
whatsapp:
meta:
signal:
networks:
traefik:
external: true
matrix: