SSB room server implemented in Go
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
1.4 KiB

version: "3.8"
services:
app:
image: 3wordchant/go-ssb-room:2.0.3
networks:
- proxy
environment:
- DOMAIN
volumes:
- "data:/app/data"
deploy:
restart_policy:
condition: on-failure
labels:
- "traefik.enable=true"
- "traefik.http.services.${STACK_NAME}.loadbalancer.server.port=3000"
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`) || HostRegexp(`{subdomain:\\w+}.${DOMAIN}`)"
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
- "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}"
- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect-aliases@docker"
- "traefik.http.middlewares.${STACK_NAME}-redirect-aliases.redirectregex.regex=^https://(\\w+)\\.${DOMAIN}/(.*)"
- "traefik.http.middlewares.${STACK_NAME}-redirect-aliases.redirectregex.replacement=https://${DOMAIN}/alias/$${1}$${2}"
- "traefik.tcp.routers.${STACK_NAME}-muxrpc.rule=HostSNI(`*`)"
- "traefik.tcp.routers.${STACK_NAME}-muxrpc.entrypoints=ssb-muxrpc"
- "traefik.tcp.services.${STACK_NAME}-muxrpc.loadbalancer.server.port=8008"
- "traefik.http.routers.${STACK_NAME}.tls.domains[0].main=${DOMAIN}"
- "traefik.http.routers.${STACK_NAME}.tls.domains[0].sans=*.${DOMAIN}"
- coop-cloud.${STACK_NAME}.app.version=2.0.3-eec92a23
networks:
proxy:
external: true
volumes:
data: