Apps, builds and deploys
What an app, a build and a deploy are, and the states an app moves through.
Three words show up all over the dashboard. Knowing them makes the rest of the docs clear.
The three things
- App — the record you create when you import a repository or a ZIP. It has a name, a subdomain, settings, and optionally a database. Creating an app builds and runs nothing on its own.
- Build — turning your source into a runnable image. Each build scans the source, builds the image, and pushes it. Builds have their own history.
- Deploy — taking a built image and making it live at your app's URL, replacing whatever ran before.
Pressing DEPLOY runs a build and then a deploy as one pipeline.
The deploy pipeline
A run moves through these stages, shown live:
QUEUED → BUILDING → SCANNING → PUSHING → BUILT → PROVISIONING DB → DEPLOYING → LIVE
PROVISIONING DB only appears on the first deploy of an app that has a database. If a run stops early it shows FAILED, or Blocked by scan when the security scan refused it. While going live you also see rollout stages: Placing your app, Downloading image, Starting your app, Connecting your domain.
Delivery status on the app summarises where you stand: Not deployed, Up to date, Changes pending, or Deploy failed.
App states
The lifecycle label on an app is one of:
- pending — created, not yet deployed.
- live — running and serving its URL.
- stopped — you stopped it; the URL stops serving. Its data and settings are kept, and you can restart it.
- grace — a short holding state during platform housekeeping.
- suspended — stopped by an administrator. You cannot restart it yourself; contact support.
- deleted — removed. This frees the subdomain and cannot be undone.
Stopped versus deleted
Stopped takes the app off the web but keeps everything — restart it any time from Actions. Delete is permanent: it removes the app, its data, and frees the subdomain. Deleting asks you to type the app name to confirm.
Restart versus redeploy
- Restart runs the same image again — use it to clear a stuck process. It does not rebuild.
- Deploy (redeploy) builds your current source into a new image and ships it — use it after you change code or environment variables that need a rebuild.
See logs and status for reading what a running app is doing.