Files
timmy-config/infra/matrix/conduit/docker-compose.yml

59 lines
1.4 KiB
YAML

version: '3.8'
services:
conduit:
image: docker.io/girlbossceo/conduit:v0.8.0
container_name: matrix-conduit
restart: unless-stopped
volumes:
- ./data:/var/lib/matrix-conduit
environment:
- CONDUIT_SERVER_NAME=${CONDUIT_SERVER_NAME}
- CONDUIT_DATABASE_PATH=/var/lib/matrix-conduit
- CONDUIT_DATABASE_BACKEND=${CONDUIT_DATABASE_BACKEND:-rocksdb}
- CONDUIT_PORT=6167
- CONDUIT_ADDRESS=0.0.0.0
- CONDUIT_CONFIG=${CONDUIT_CONFIG:-}
- CONDUIT_ALLOW_REGISTRATION=${CONDUIT_ALLOW_REGISTRATION:-false}
- CONDUIT_ALLOW_FEDERATION=${CONDUIT_ALLOW_FEDERATION:-true}
- CONDUIT_ENABLE_METRICS=${CONDUIT_ENABLE_METRICS:-false}
- RUST_LOG=info
networks:
- matrix
expose:
- "6167"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:6167/_matrix/client/versions"]
interval: 30s
timeout: 10s
retries: 5
caddy:
image: docker.io/caddy:2.7-alpine
container_name: matrix-caddy
restart: unless-stopped
ports:
- "80:80"
- "443:443"
- "8448:8448" # Federation
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- caddy_data:/data
- caddy_config:/config
environment:
- DOMAIN=${DOMAIN}
depends_on:
- conduit
networks:
- matrix
cap_add:
- NET_ADMIN # For Caddy to bind low ports
networks:
matrix:
name: matrix
volumes:
caddy_data:
caddy_config: