Skip to content

Engine snapshots: hawser snapshot save/restore/clone the engine state #122

Description

@zcsizmadia

Save, branch, and roll back the whole engine state — images and volumes — as named checkpoints. Docker Desktop has no engine-state snapshotting at all.

What it does

  • hawser snapshot save <name> — checkpoint the engine's VHDX (all images + volumes) to a named, checksummed archive
  • hawser snapshot restore <name> — roll the engine back to it
  • hawser snapshot list / delete
  • refuses while containers are running (reuse the idle busy-probe), stops the engine cleanly first (never wsl --shutdown), operates only on Hawser's own distro

Why it's useful

  • "Set up my dev environment, snapshot it, trash it during a risky test, restore in seconds."
  • Reproducible starting points for demos and CI, complementing the reproducible install (hawser.lock, air-gap bundle).

Risk / notes

Touches VHDX-level operations (export/import or copy of the disk). Non-destructive by contract (snapshots are additive; restore is explicit and confirmed), but needs careful testing — flag for review before merge. Overlaps mechanically with #64's data-dir relocation; may share code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions