4 ms·
> How Do You Handle Deployments? This section misses the one thing I was interested in: how do you avoid downtime in a deployment? I like to write web applica
by jstanley 5mo ago
> How Do You Handle Deployments?
This section misses the one thing I was interested in: how do you avoid downtime in a deployment?
I like to write web applications with Perl and Mojolicious, and a deployment is just "hypnotoad app", and then hypnotoad gracefully starts up new worker processes to handle new requests and lets the other ones exit once they've finished handling their in-flight requests.
When I switched to Docker I found that there was no good way to handle this.
- fnoef 5mo agoRecord the existing container id, rescale the service to 2 instances (hence bringing a second container up), wait for the second one to be healthy, (optional) stop directing traffic to the old container, wait a few seconds, stop the old container, rescale the service back to 1 instance.
- hamdingers 5mo agoHere's a CLI plugin that automates this: https://github.com/wowu/docker-rollout https://github.com/wowu/docker-rollout
- nojs 5mo agoAnother vote for this - we’ve been using it for years without issues.
- Oras 5mo agoBlue Green Deployment. There must be a docker container to handle this or at least a bash script. edit: thanks to next comment for referencing one
- nsxwolf 5mo ago[dead]