Files
matrix-deployment/docker-compose.yml
T
rasktandClaude Opus 5 9799e83808 Initial commit: Matrix deployment (Synapse, Element, Caddy, Postgres)
Docker-Compose-Setup mit Synapse, Element Web, Synapse-Admin,
Caddy als Reverse Proxy und Postgres. Secrets und Laufzeitdaten
sind via .gitignore ausgeschlossen; Beispiel-Configs mit
Platzhaltern liegen als *.example bei.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y31cBx4B4b56LmzTA9wx76
2026-08-29 04:47:21 +02:00

55 lines
1.2 KiB
YAML

services:
db:
image: postgres:15
restart: unless-stopped
environment:
- POSTGRES_USER=matrix
- POSTGRES_DB=synapse
- POSTGRES_PASSWORD_FILE=/run/secrets/db_password
- POSTGRES_INITDB_ARGS=--lc-collate=C --lc-ctype=C --encoding=UTF-8
secrets:
- db_password
volumes:
- ./postgres:/var/lib/postgresql/data
synapse:
image: matrixdotorg/synapse:latest
restart: unless-stopped
environment:
- SYNAPSE_SERVER_NAME=matrix.greif.life-maps.com
- SYNAPSE_REPORT_STATS=no
volumes:
- ./synapse:/data
depends_on:
- db
element:
image: vectorim/element-web:latest
restart: unless-stopped
volumes:
- ./element/config.json:/app/config.json:ro
element-admin:
image: awesometechnologies/synapse-admin:latest
restart: unless-stopped
caddy:
image: caddy:2-alpine
restart: unless-stopped
ports:
- "80:80"
- "443:443"
volumes:
- ./caddy/Caddyfile:/etc/caddy/Caddyfile:ro
- ./caddy/data:/data
- ./caddy/config:/config
- ./matrix-landing:/var/www/html:ro
depends_on:
- synapse
- element
- element-admin
secrets:
db_password:
file: ./secrets/db_password.txt