Problem
The single-relay production compose stops the only container on update. Clients disconnect and the relay is unreachable until the new instance is ready.
Proposal
Add an opt-in HAProxy stack:
- Two relay backends (nostream-blue, nostream-green) behind one listener on 127.0.0.1:8008
- HAProxy health-checks /readyz and uses option redispatch to retry on the other backend
- DNS re-resolution for recreated containers (Docker embedded DNS)
- rolling-relay-recreate.sh — replace one relay at a time, wait for healthy, then the next
Depends on: /readyz (#763), graceful WS drain (#773)
Ref: https://statusdude.com/blog/zero-downtime-docker-compose
Problem
The single-relay production compose stops the only container on update. Clients disconnect and the relay is unreachable until the new instance is ready.
Proposal
Add an opt-in HAProxy stack:
Depends on: /readyz (#763), graceful WS drain (#773)
Ref: https://statusdude.com/blog/zero-downtime-docker-compose