homelab/bxl-shp/apps/docker-compose.matrix.yaml

84 lines
2.5 KiB
YAML

services:
matrix-synapse:
container_name: matrix-synapse
image: matrixdotorg/synapse:v1.92.3
restart: unless-stopped
environment:
- SYNAPSE_SERVER_NAME=bhasher.com
- SYNAPSE_REPORT_STATS=no
volumes:
- $DATA/matrix/synapse:/data:rw
healthcheck:
test: ["CMD", "curl", "-fSs", "http://localhost:8008/health"]
interval: 15s
timeout: 5s
retries: 3
start_period: 5s
labels:
- "traefik.enable=true"
- "traefik.http.routers.matrix-synapse.rule=Host(`matrix.bhasher.com`)"
- "traefik.http.routers.matrix-synapse.tls=true"
- "traefik.http.routers.matrix-synapse.tls.certresolver=http"
- "traefik.http.routers.matrix-synapse.entrypoints=internalsecure,externalsecure"
- "traefik.http.services.matrix-synapse.loadbalancer.server.port=8008"
networks:
- external
- matrix
matrix-riot:
container_name: matrix-element
image: ghcr.io/bubuntux/element-web
restart: unless-stopped
volumes:
- $CONFIG/riot/config.json:/etc/element-web/config.json:ro
labels:
- "traefik.enable=true"
- "traefik.http.routers.matrix-riot.rule=Host(`element.bhasher.com`)"
- "traefik.http.routers.matrix-riot.tls=true"
- "traefik.http.routers.matrix-riot.tls.certresolver=http"
- "traefik.http.routers.matrix-riot.entrypoints=internalsecure,externalsecure"
- "traefik.http.services.matrix-riot.loadbalancer.server.port=80"
networks:
- external
matrix-maubot:
container_name: matrix-maubot
image: dock.mau.dev/maubot/maubot:latest
restart: unless-stopped
command: "sh -c \"/usr/bin/python3 -m pip install bs4 && /opt/maubot/docker/run.sh\""
environment:
- TZ=Europe/Paris
- PYTHONUNBUFFERED=1
volumes:
- $DATA/matrix/maubot:/data
- /home/shp/homelab/builds/maubot-resotU:/plugin:ro
labels:
- "traefik.enable=true"
- "traefik.http.routers.matrix-maubot.rule=Host(`maubot.bhasher.com`)"
- "traefik.http.routers.matrix-maubot.tls=true"
- "traefik.http.routers.matrix-maubot.tls.certresolver=http"
- "traefik.http.routers.matrix-maubot.entrypoints=internalsecure"
- "traefik.http.services.matrix-maubot.loadbalancer.server.port=29316"
networks:
- external
- storage
- matrix
#mautrix-slack:
# container_name: mautrix-slack
# image: dock.mau.dev/mautrix/slack:latest
# restart: unless-stopped
# volumes:
# - $DATA/matrix/slack:/data
# networks:
# - matrix
# - storage
networks:
matrix:
external:
external: true
storage:
external: true