Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> 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.



Record 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.


Here's a CLI plugin that automates this: https://github.com/wowu/docker-rollout


Another vote for this - we’ve been using it for years without issues.


Blue 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




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: