63 lines
2.3 KiB
YAML
63 lines
2.3 KiB
YAML
services:
|
|
tuwunel:
|
|
image: ghcr.io/matrix-construct/tuwunel:latest
|
|
container_name: tuwunel
|
|
restart: unless-stopped
|
|
mem_limit: 512m
|
|
cpus: 0.5
|
|
stop_grace_period: 30s
|
|
expose:
|
|
- '8008'
|
|
environment:
|
|
TUWUNEL_SERVER_NAME: mmdv-chats.dynv6.net
|
|
TUWUNEL_DATABASE_PATH: /var/lib/tuwunel
|
|
TUWUNEL_PORT: '8008'
|
|
TUWUNEL_ADDRESS: 0.0.0.0
|
|
TUWUNEL_ALLOW_REGISTRATION: 'true'
|
|
TUWUNEL_REGISTRATION_TOKEN: 614f27b3a91e8c0456c9d82e7af0f58b
|
|
TUWUNEL_ALLOW_FEDERATION: 'true'
|
|
TUWUNEL_SHOW_ALL_LOCAL_USERS_IN_USER_DIRECTORY: 'true'
|
|
TUWUNEL_NEW_USER_DISPLAYNAME_SUFFIX: ''
|
|
TUWUNEL_TRUSTED_SERVERS: '["matrix.org"]'
|
|
volumes:
|
|
- tuwunel-db:/var/lib/tuwunel
|
|
labels:
|
|
traefik.enable: 'true'
|
|
traefik.http.routers.tuwunel-http.entrypoints: https
|
|
traefik.http.routers.tuwunel-http.rule: Host(`mmdv-chats.dynv6.net`)
|
|
traefik.http.routers.tuwunel-http.tls.certresolver: letsencrypt
|
|
traefik.http.routers.tuwunel-http.service: tuwunel
|
|
traefik.http.services.tuwunel.loadbalancer.server.port: '8008'
|
|
traefik.docker.network: coolify
|
|
networks:
|
|
- coolify
|
|
well-known:
|
|
image: nginx:alpine
|
|
container_name: tuwunel-wellknown
|
|
restart: unless-stopped
|
|
expose:
|
|
- '80'
|
|
command:
|
|
- sh
|
|
- -c
|
|
- "mkdir -p /usr/share/nginx/html/.well-known/matrix\ncat > /usr/share/nginx/html/.well-known/matrix/server\
|
|
\ <<'EOF'\n{\n \"m.server\": \"mmdv-chats.dynv6.net\"\n}\nEOF\ncat > /usr/share/nginx/html/.well-known/matrix/client\
|
|
\ <<'EOF'\n{\n \"m.homeserver\": {\n \"base_url\": \"https://mmdv-chats.dynv6.net\"\
|
|
\n },\n \"m.identity_server\": {\n \"base_url\": \"https://mmdv-chats.dynv6.net\"\
|
|
\n }\n}\nEOF\nnginx -g 'daemon off;'\n"
|
|
labels:
|
|
traefik.enable: 'true'
|
|
traefik.http.routers.tuwunel-wk.entrypoints: https
|
|
traefik.http.routers.tuwunel-wk.rule: Host(`mmdv-chats.dynv6.net`) && PathPrefix(`/.well-known`)
|
|
traefik.http.routers.tuwunel-wk.tls.certresolver: letsencrypt
|
|
traefik.http.routers.tuwunel-wk.service: tuwunel-wk
|
|
traefik.http.services.tuwunel-wk.loadbalancer.server.port: '80'
|
|
traefik.docker.network: coolify
|
|
networks:
|
|
- coolify
|
|
volumes:
|
|
tuwunel-db: null
|
|
networks:
|
|
coolify:
|
|
external: true
|