{"repo":"wowu/docker-rollout","free":true,"listed":false,"github":"https://github.com/wowu/docker-rollout","clone":"git clone https://github.com/wowu/docker-rollout.git","description":"🚀 Zero Downtime Deployment for Docker Compose","language":"Shell","stars":3313,"topics":["deployment","docker","docker-compose"],"license":"MIT","category":"deployment-docker-iac","readme_excerpt":"docker rollout Zero Downtime Deployment for Docker Compose Documentation Docker CLI plugin that updates Docker Compose services without downtime. Simply replace docker compose up -d with docker rollout in your deployment scripts. This command will scale the service to twice the current number of instances, wait for the new containers to be ready, and then remove the old containers. - Features - Installation - Usage - ⚠️ Caveats - Sample deployment script - Draining old containers - Why? - License Features - ⏳ Zero downtime deployment for Docker Compose services - 🐳 Works with Docker Compose and docker-compose - ❤️ Supports Docker healthchecks out of the box Installation If you use docker with sudo, or want to make docker-rollout available for all users, install it to /usr/local/lib/docker/cli-plugins/ instead. Usage Run docker rollout instead of docker compose up -d to update a service without downtime. If you have both docker compose plugin and docker-compose command available, docker-rollout will use docker compose by default. Options: - -f --file PATH - (not required) - Path to compose file, can be specified multiple times, as in docker compose . - -t --timeout SECONDS - (not required) - Timeout in seconds to wait for new container to become healthy, if the container has healthcheck defined in Dockerfile or docker-compose.yml . Default: 60 - -w --wait SECONDS - (not required) - Time to wait for new container to be ready if healthcheck is not defined. Default: 10 - --wait-","default_branch":null,"files":null,"tree":[],"storefront":"/r/wowu","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/wowu/docker-rollout/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}