Snapshots can be used to save the current disk state of a devbox, and to create new devboxes from a previous point in time. These can be used to:

  • Improve build times by snapshotting a populated build cache.
  • Roll back to a known good point in time.
  • Perform fan-out and attempt multiple approaches to a code change.

Snapshots are referenced by a random identifier and can be queried via the API. Currently only disk snapshots are supported.

1

Identify the devbox to snapshot

First, identify a running devbox id using the dashboard or rl-cli.

$ rl devbox list --status=running

Optionally, you may want to remove any temporary files before proceeding to reduce the latency of snapshot operations.

2

Snapshot the disk of a currently running devbox

3

Create a new devbox from a snapshot

Using the snapshot_id from the previous step, launch a new devbox.