Recipe: snapshots & templates

Configure a VM once, then save_image to turn it into a reusable template. New VMs created from it boot ready. rebuild_image bumps the version for future VMs; rollback_image reverts — existing VMs are never touched.

Stop re-installing your toolchain on every VM. Configure one, snapshot it, and launch identical clones in seconds.

Snapshot a configured VM

save this VM as a template called "node-dev" — it has my linters and CLI tools

Your agent calls save_image with the vmId, a name, and a description. The description is load-bearing — it’s what an agent reads from list_images to know how to bring the image up, so describe what’s pre-installed and any start steps.

Launch clones

spin up two VMs from my node-dev template

Your agent finds it with list_images (filter: mine) and calls create_vm with that image. Each clone boots already configured.

Version it

  • rebuild_image — re-snapshot from an updated VM to bump the image version. New VMs get the new bytes; existing VMs are unaffected.
  • list_image_versions — see every version (sha256, size, source VM, timestamp).
  • rollback_image — re-point the image at an earlier version. Again, existing VMs are untouched; only new provisions get the rolled-back bytes.

Notes

  • This is how you build a golden base for worker fleets or a standard dev environment.
  • Snapshots are templates for new VMs. To recover an existing VM’s disk to a point in time, use backups instead.
  • Publishing an image to the public catalog is operator-only; your saved images are private to your tenant.