Files
AgapHost/matrix/docker-compose.yml
Alvis e04f9059ae Add Matrix homeserver with MatrixRTC calling support
- Synapse + PostgreSQL + coturn + LiveKit + lk-jwt-service
- Caddy entries for mtx.alogins.net, lk.alogins.net, lkjwt.alogins.net
- well-known endpoints for Matrix client/server discovery and RTC transport
- Users: admin, elizaveta, aleksandra

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 14:12:13 +00:00

74 lines
1.8 KiB
YAML

services:
synapse:
image: matrixdotorg/synapse:latest
container_name: synapse
restart: unless-stopped
volumes:
- ${SYNAPSE_DATA}:/data
- /etc/localtime:/etc/localtime:ro
environment:
- SYNAPSE_CONFIG_PATH=/data/homeserver.yaml
ports:
- "127.0.0.1:8008:8008"
depends_on:
- db
networks:
- matrix
- frontend
db:
image: postgres:16-alpine
container_name: synapse-db
restart: unless-stopped
environment:
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_INITDB_ARGS=--encoding=UTF-8 --lc-collate=C --lc-ctype=C
volumes:
- ${POSTGRES_DATA}:/var/lib/postgresql/data
- /etc/localtime:/etc/localtime:ro
networks:
- matrix
lk-jwt-service:
image: ghcr.io/element-hq/lk-jwt-service:latest
container_name: lk-jwt-service
restart: unless-stopped
ports:
- "127.0.0.1:8009:8080"
environment:
- LIVEKIT_JWT_BIND=:8080
- LIVEKIT_URL=wss://lk.alogins.net
- LIVEKIT_KEY=${LIVEKIT_KEY}
- LIVEKIT_SECRET=${LIVEKIT_SECRET}
- LIVEKIT_FULL_ACCESS_HOMESERVERS=mtx.alogins.net
extra_hosts:
- "mtx.alogins.net:host-gateway"
- "lk.alogins.net:host-gateway"
livekit:
image: livekit/livekit-server:latest
container_name: livekit
restart: unless-stopped
network_mode: host
volumes:
- ./livekit/livekit.yaml:/etc/livekit.yaml:ro
command: --config /etc/livekit.yaml
coturn:
image: coturn/coturn:latest
container_name: coturn
restart: unless-stopped
network_mode: host
volumes:
- ./coturn/turnserver.conf:/etc/coturn/turnserver.conf:ro
- /etc/localtime:/etc/localtime:ro
networks:
matrix:
driver: bridge
internal: true
frontend:
driver: bridge