From 69160a6dbdf90c2ba0986205c28ecf2114b718d5 Mon Sep 17 00:00:00 2001 From: Matheus Fillipe Date: Mon, 18 May 2026 17:22:18 +0200 Subject: [PATCH 1/2] compose: drop hardcoded container_name to allow parallel deploys --- compose.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/compose.yaml b/compose.yaml index 2cb65be..eb9fc63 100644 --- a/compose.yaml +++ b/compose.yaml @@ -9,7 +9,6 @@ services: obbyircd: image: ${OBBYIRCD_IMAGE:-mattfly/obbyircd:latest} - container_name: obbyircd restart: unless-stopped expose: - "8080" @@ -43,7 +42,6 @@ services: obby-api: image: ${OBBY_API_IMAGE:-mattfly/obby-api:latest} - container_name: obby-api restart: unless-stopped depends_on: obbyircd: @@ -81,7 +79,6 @@ services: obby: image: ${OBBY_WEB_IMAGE:-mattfly/obby:latest} - container_name: obby-web restart: unless-stopped profiles: ["frontend"] expose: From 6c5a6ed400015110f70beb38e75d39583063edac Mon Sep 17 00:00:00 2001 From: Matheus Fillipe Date: Mon, 18 May 2026 19:28:20 +0200 Subject: [PATCH 2/2] compose: WSS upgrade routing on API host --- compose.yaml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/compose.yaml b/compose.yaml index eb9fc63..d95c6b5 100644 --- a/compose.yaml +++ b/compose.yaml @@ -36,9 +36,16 @@ services: start_period: 30s labels: - traefik.enable=true + # IRC websocket on its own subdomain. - traefik.http.routers.obbyircd.rule=Host(`${IRC_FQDN}`) - traefik.http.routers.obbyircd.tls=true - traefik.http.services.obbyircd.loadbalancer.server.port=8080 + # IRC websocket on the API host (WSS upgrade requests only). + # Longer rule + priority 100 wins over obby-api's catch-all. + - traefik.http.routers.obbyircd-ws.rule=Host(`${API_FQDN}`) && HeaderRegexp(`Upgrade`,`websocket`) + - traefik.http.routers.obbyircd-ws.tls=true + - traefik.http.routers.obbyircd-ws.priority=100 + - traefik.http.services.obbyircd-ws.loadbalancer.server.port=8080 obby-api: image: ${OBBY_API_IMAGE:-mattfly/obby-api:latest}