Operations

Deployment History & Rollbacks

Every deploy is recorded with its commit; rolling back is usually instant, no rebuild required.

Every deploy DeployOS runs is recorded — which commit, which image, when, and whether it succeeded — visible on the app's Deploy tab and the fleet-wide Deployments page.

Rolling back

Pick any previous deployment from the app's history and click Rollback. What happens next depends on how that deployment was built:

  • Instant rollback — if the deployment was built via Railpack and its image is still one of the last 3 kept on the server, DeployOS just re-starts that cached image. No rebuild, no waiting — this is the common case.
  • Rebuild rollback — for Dockerfile/Compose-based apps (or a Railpack build old enough to have been pruned), DeployOS checks out that commit and redeploys from source, same as a normal deploy.

Either way, the same soft health check that a normal deploy gets runs after a rollback too.

What gets recorded per deployment

  • The exact commit hash and message that was deployed.
  • Which environment variable keys were present (not their values).
  • The built image tag, when applicable.

Reading the fleet-wide Deployments page

Beyond a single app's history, Deployments aggregates recent deploys across every app and server — useful for spotting "did anything ship in the last hour" at a glance, and for bulk-moving apps to a different server (see Migrating Apps Between Servers).

Diffing a deployment

Click Diff on any historical deployment to compare it against what's live right now — the built image (or commit) and which environment variable keys changed, added, or were removed. Values themselves are never shown in a diff, even for your own deployments, since the whole point of environment variables is that they don't get printed places they don't need to be.

Useful for answering "what actually changed between the version that worked and the one that doesn't" without digging through commit history by hand.