Skip to content

Deployments

Every time your app is built and released, FastAPI Cloud records it as a deployment. The Deployments tab in your app shows the full history, the status of each one, and the logs behind it, so you can see what’s live and diagnose anything that failed. For the mechanics of how a deployment is built and rolled out, see How It Works.

A new deployment is created whenever:

  1. Navigate to your app in the dashboard.
  2. Select Deployments from the sidebar.

Each row shows:

  • The commit message of the deployment, or “Deployment” when it wasn’t triggered from a commit.
  • A short deployment ID (the first 8 characters). When the deployment came from GitHub, this links to the exact commit.
  • A Live badge on the deployment currently serving traffic. During a gradual rollout it shows the share of traffic it’s taking (for example, Live 40%) until it reaches 100%.
  • The current status, with a colored dot and a tooltip explaining it. In-progress deployments also show how long they’ve been running.
  • When the deployment was created.

The live deployment is always listed first. Use Load more at the bottom to page through older deployments.

Select any deployment to open its detail view. The header shows the app name, the full deployment ID (with a copy button), the creation date, the source commit if there is one, and the current routing and deployment status.

Below the header are two log tabs:

  • Build Logs: The output from installing dependencies and building your app’s image. This is where to look when a deployment fails before it starts serving traffic.
  • Runtime Logs: The logs your app emits once it’s running. This tab becomes available once the deployment reaches a running state. For the full logs experience, including live streaming and filtering, see Logs.

A deployment moves through five stages. The status of a deployment tells you which stage it’s in, or where it stopped.

StageWhat happens
UploadYour code is packaged and uploaded to the cloud.
BuildThe upload is extracted and your app’s image is built.
DeployThe built image is rolled out.
VerifyThe new instances are checked for readiness before taking traffic.
ReadyThe deployment is running and serving traffic.

The rollout is gradual and designed for zero downtime: your previous deployment keeps serving traffic until the new one passes verification. If a new deployment fails, your last successful deployment stays live.

The status column reflects where a deployment is in the pipeline. The most common statuses are:

StatusMeaning
Build QueuedWaiting to be picked up by the build system.
Building ImageBuilding a container image from your source code.
Deploying ImageRolling the built image out to the cloud.
Verifying ReadinessChecking that the app is ready to serve traffic.
ReadyRunning and serving traffic.
Build FailedThe image couldn’t be built. Check the Build Logs.
Verification FailedThe app didn’t pass readiness checks for several minutes. Check the Runtime Logs.
ExpiredAn older deployment that is no longer retained.

To re-run a deployment with the same source, deploy again with fastapi deploy, or push a new commit if your app is linked to a repository. Configuration-only changes don’t need a rebuild: use Save and Redeploy where the change is made to release the update from your current image.