Skip to content

stratumctl images

Manage VM images

Terminal window
stratumctl images [flags]

Aliases: image, img

Delete any image install-wide (bootstrap-admin / platform-admin)

Terminal window
stratumctl images admin-delete <image-id> [flags]

Aliases: admin-rm

Terminal window
stratumctl images admin-delete img-k3m9x2abqt
stratumctl images admin-delete img-k3m9x2abqt --force --keep-snapshots
Flag Type Default Description
--force bool false Deregister even while a launch template names the image
--keep-snapshots bool false Leave behind the snapshots a create-from-instance took for this image (they pin the source volume)

Describe any image install-wide (bootstrap-admin / platform-admin)

Terminal window
stratumctl images admin-get <image-id> [flags]
Terminal window
stratumctl images admin-get img-k3m9x2abqt
stratumctl images admin-get img-k3m9x2abqt --output json

List every image install-wide (bootstrap-admin / platform-admin)

Terminal window
stratumctl images admin-list [flags]
Terminal window
stratumctl images admin-list
stratumctl images admin-list --scope project --output json
Flag Type Default Description
--region string Filter region-scoped images by region
--scope string Filter by scope (global | region | project)

Capture a running instance’s volumes as a project image

Terminal window
stratumctl images create-from-instance [flags]
Terminal window
stratumctl images create-from-instance --instance i-uy3ureaklq --name web-golden
stratumctl images create-from-instance --instance i-uy3ureaklq --name web-golden --no-reboot --tag env=prod
Flag Type Default Description
--description string Free-text description
--display-name string Human-friendly display name
--instance string Source instance ID (required)
--name string New image name (required)
--no-reboot bool false Snapshot without stopping the instance: the instance agent freezes the filesystems (consistency quiesced); with no agent answering, crash-consistent
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)
--tag stringArray Tag as key=value (repeatable)

Boot a new volume from an image

Terminal window
stratumctl images create-volume <image-id> [flags]
Terminal window
stratumctl images create-volume img-k3m9x2abqt --name boot-01
stratumctl images create-volume img-k3m9x2abqt --name boot-02 --size-gib 40
Flag Type Default Description
--display-name string Human-friendly display name
--name string New volume name (required)
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)
--size-gib int64 0 Volume size override in GiB (defaults to image size)
--storage-class string Storage class override (defaults to image’s class)

Deregister an owned image (its own snapshots go with it unless –keep-snapshots; refused while a launch template names it unless –force)

Terminal window
stratumctl images delete <image-id> [flags]

Aliases: deregister

Terminal window
stratumctl images delete img-k3m9x2abqt
stratumctl images delete img-k3m9x2abqt --keep-snapshots
Flag Type Default Description
--force bool false Deregister even while a launch template’s $Default/$Latest names the image
--keep-snapshots bool false Leave behind the snapshots a create-from-instance took for this image. They pin the source volume, so keeping them blocks that volume’s delete
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

Deprecate an image now or at a future time (hidden from default lists, launches still allowed)

Terminal window
stratumctl images deprecate <image-id> [flags]
Terminal window
stratumctl images deprecate img-k3m9x2abqt
stratumctl images deprecate img-k3m9x2abqt --at 2027-01-01T00:00:00Z
Flag Type Default Description
--at string Deprecate at this RFC3339 time instead of now
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

Disable an image: no new launches, existing instances unaffected

Terminal window
stratumctl images disable <image-id> [flags]
Terminal window
stratumctl images disable img-k3m9x2abqt
Flag Type Default Description
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

Re-enable a disabled image

Terminal window
stratumctl images enable <image-id> [flags]
Terminal window
stratumctl images enable img-k3m9x2abqt
Flag Type Default Description
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

Export an image to an object in one of the project’s buckets

Terminal window
stratumctl images export <image-id> [flags]
Terminal window
stratumctl images export img-k3m9x2abqt --bucket bkt-6k2m8x4q7a --key exports/web-golden.qcow2
stratumctl images export img-k3m9x2abqt --bucket bkt-6k2m8x4q7a --key exports/web-golden.raw --format raw
Flag Type Default Description
--bucket string Destination bucket ID (required)
--format string Export format: qcow2 | raw (defaults to qcow2)
--key string Destination object key (required)
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

Describe an image

Terminal window
stratumctl images get <image-id> [flags]
Terminal window
stratumctl images get img-k3m9x2abqt
stratumctl images get img-k3m9x2abqt --output json
Flag Type Default Description
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

URL-import a global or region image (bootstrap-admin)

Terminal window
stratumctl images import [flags]
Terminal window
stratumctl images import --name almalinux-10 --url https://repo.almalinux.org/almalinux/10/cloud/x86_64/images/AlmaLinux-10-GenericCloud-latest.x86_64.qcow2 \
--format qcow2 --os-family linux --os-distro almalinux --os-version 10
Flag Type Default Description
--arch string amd64 Image architecture (amd64 | arm64)
--display-name string Human-friendly display name
--format string raw Source format (raw | qcow2)
--name string Image name (required)
--os-distro string OS distribution
--os-family string OS family
--os-version string OS version
--region string Region (required when scope is region)
--scope string global Visibility scope (global | region)
--sha256 string Expected hex-encoded SHA256 of the source bytes
--size-gib int64 0 Virtual disk size in GiB (optional; auto-derived from the image on import)
--storage-class string Storage class for the imported image (default: the install’s default class)
--url string Source URL (required)

Import a project image from an object in one of the project’s buckets

Terminal window
stratumctl images import-bucket [flags]
Terminal window
stratumctl images import-bucket --name custom-01 --bucket bkt-6k2m8x4q7a --key images/custom-01.qcow2 --storage-class replicated
Flag Type Default Description
--arch string amd64 Image architecture (amd64 | arm64)
--bucket string Source bucket ID (required)
--description string Free-text description
--display-name string Human-friendly display name
--format string Disk format: qcow2 | raw (sniffed when omitted)
--key string Source object key (required)
--name string New image name (required)
--os-distro string OS distribution (e.g. ubuntu)
--os-family string OS family (e.g. linux)
--os-version string OS version (e.g. 24.04)
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)
--sha256 string Expected SHA-256 of the object (hex); the import fails on mismatch
--storage-class string Storage class for the image (required)
--tag stringArray Tag as key=value (repeatable)

List images visible to a project (global + region + project-owned + shared + public)

Terminal window
stratumctl images list [flags]
Terminal window
stratumctl images list
stratumctl images list --owner self --include-deprecated
stratumctl images list --scope global --output json
Flag Type Default Description
--include-deprecated bool false Include deprecated images (hidden by default)
--owner string Filter by owner: self | shared | public | system
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)
--scope string Filter to one scope: global | region | project

Promote a snapshot to a project-scoped image

Terminal window
stratumctl images promote [flags]
Terminal window
stratumctl images promote --from-snapshot snap-4k8m2x7q9a --name web-golden --os-family linux --os-distro ubuntu --os-version 24.04
Flag Type Default Description
--arch string amd64 Image architecture (amd64 | arm64)
--display-name string Human-friendly display name
--from-snapshot string Source snapshot ID (required)
--name string New image name (required)
--os-distro string OS distribution (e.g. ubuntu)
--os-family string OS family (e.g. linux)
--os-version string OS version (e.g. 24.04)
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

Make an owned image visible to every project (public)

Terminal window
stratumctl images publish <image-id> [flags]
Terminal window
stratumctl images publish img-k3m9x2abqt
Flag Type Default Description
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

Share an owned image with other projects

Terminal window
stratumctl images share <image-id> [flags]
Terminal window
stratumctl images share img-k3m9x2abqt --with p-team-b
stratumctl images share img-k3m9x2abqt --with p-team-b,p-team-c
Flag Type Default Description
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)
--with stringSlice Project ID(s) to share with (required, comma-separated or repeated)

Clear an image’s deprecation

Terminal window
stratumctl images undeprecate <image-id> [flags]
Terminal window
stratumctl images undeprecate img-k3m9x2abqt
Flag Type Default Description
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

Make a public image private again (explicit shares survive)

Terminal window
stratumctl images unpublish <image-id> [flags]
Terminal window
stratumctl images unpublish img-k3m9x2abqt
Flag Type Default Description
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

Revoke an image share from projects

Terminal window
stratumctl images unshare <image-id> [flags]
Terminal window
stratumctl images unshare img-k3m9x2abqt --from p-team-b
Flag Type Default Description
--from stringSlice Project ID(s) to revoke from (required, comma-separated or repeated)
--project string Project ID (defaults to STRATUM_PROJECT or profile project_id)

Upload a qcow2 or raw disk image into the image catalog (bootstrap-admin)

Terminal window
stratumctl images upload [flags]

Streams the file to the control plane, which checks it (sha256 when given, qemu-img: qcow2 or raw, no backing file) and imports it into the storage class (default: the default class). The image is pending until the import finishes; stratumctl images admin-get <id> follows it.

Terminal window
stratumctl images upload --file./debian-13-genericcloud-amd64.qcow2 --name debian-13 \
--os-family linux --os-distro debian --os-version 13
Flag Type Default Description
--arch string Image architecture (amd64 | arm64; default amd64)
--description string Description
--display-name string Human-friendly display name
--file string The disk image to upload (qcow2 or raw; required)
--format string qcow2 | raw (default: read from the file)
--name string Image name (required)
--os-distro string OS distribution
--os-family string OS family
--os-version string OS version
--region string Region (required when scope is region)
--scope string global | region (default global)
--sha256 string Expected hex sha256 of the file; a mismatch refuses the upload
--storage-class string Storage class to import into (default: the default class)