Zero-Downtime Deploys with GitHub Actions and Nginx

For the Clínica Bíblica patient API, downtime wasn’t an option — patients hit the service around the clock. Here’s the pipeline that let us deploy continuously without anyone noticing.

Build once, promote everywhere

The CI job builds a single artifact and promotes it through staging to production. The thing you tested is the thing you ship.

Reload, don’t restart

Nginx reload swaps workers gracefully, draining in-flight requests instead of dropping them. Combined with health checks, the cutover is invisible.

Roll back in seconds

Keep the previous release symlinked. A bad deploy is a one-command revert, not a 2am incident.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top