Skip to content

How Deploys Work ​

Each service deploys on its own. Deploy (or Redeploy) on a service builds or pulls that service and restarts it with its current settings; the project's other services keep running exactly as they were. Adding a service deploys it automatically, and networking changes redeploy the service they belong to.

To roll out every service at once, for example after editing several, use Deploy all in the project's Settings. Deploy all also removes services you deleted from the project.

Steps ​

Each service moves through these states, shown on its Overview and in the sidebar:

StateWhat is happening
PendingWaiting its turn in the deployment
BuildingA Git service is being built on Zenavo's build machines
DeployingKubernetes objects are being applied to the server
StartingContainers are starting and waiting to pass their health check
RunningAll instances are ready
Failed / CrashedThe build or rollout failed, or the container keeps exiting. Open Logs for the reason.
  1. Build. Git services are cloned and built (Build Plan), and the image is pushed to Zenavo's registry. Image services are resolved to a digest, so a rollback runs exactly the same image.
  2. Apply. The service is applied; with Deploy all, services are applied in dependency order, each waiting for its dependencies to become ready.
  3. Roll out. Services without volumes update with zero downtime: the new instance must be healthy before the old one stops. Services with volumes stop first and then start, so two instances never write to the same data.
  4. Initialize. If a service has initialization commands (from a template), they run once in a job with the same image, variables and volumes before the service starts.

Logs ​

Each deployment's output is under Logs → Build Logs while it runs and afterwards. See Logs.

Not affiliated with Zeabur.