abiosoft/colima · error

cannot find %s image for %s runtime

Error message

cannot find %s image for %s runtime

What it means

Sentinel error produced by findImage when the runtime/architecture pair has no entry in diskImageMap, the catalog built at init from the embedded images/images.txt. Because err is a named return set upfront, any miss — unknown runtime key or missing GoArch key — returns this error alongside a zero limaconfig.File.

Source

Thrown at environment/vm/lima/limautil/image.go:57

// ImageCached returns if the image for architecture and runtime
// has been previously downloaded and cached.
func ImageCached(arch environment.Arch, runtime, mirror string) (limaconfig.File, bool) {
	img, err := findImage(arch, runtime)
	if err != nil {
		return img, false
	}
	img.Location = mirrorURL(img.Location, mirror)

	image := diskImageFile(downloader.CacheFilename(img.Location))

	img.Location = image.Location()
	img.Digest = ""

	return img, image.Generated()
}

func findImage(arch environment.Arch, runtime string) (f limaconfig.File, err error) {
	err = fmt.Errorf("cannot find %s image for %s runtime", arch, runtime)

	imgFile, ok := diskImageMap[runtime]
	if !ok {
		return
	}
	img, ok := imgFile[arch.GoArch()]
	if !ok {
		return
	}
	return img, nil
}

// Image returns the details of the disk image to download for the arch and runtime.
func Image(arch environment.Arch, runtime string) (limaconfig.File, error) {
	return findImage(arch, runtime)
}

// DownloadImage downloads the image for arch and runtime.

View on GitHub (pinned to c3a5f9184d)

Solutions

  1. Use a supported runtime: 'docker' or 'containerd' (the names present in the embedded catalog)
  2. Match --arch to a published architecture: aarch64 or x86_64
  3. Upgrade colima — the embedded image catalog grows each release
  4. If building colima from source, verify images/images.txt is present in the embedded FS

Example fix

# before
colima start --runtime dockr    # cannot find aarch64 image for dockr runtime
# after
colima start --runtime docker
Defensive patterns

Strategy: validation

Validate before calling

// probe the catalog before committing
if _, err := limautil.Image(arch, runtime); err != nil {
    return fmt.Errorf("unsupported pair, pick docker/containerd and aarch64/x86_64: %w", err)
}

Prevention

When it happens

Trigger: Calling limautil.Image/DownloadImage/ImageCached with a runtime string absent from images/images.txt (typo, unsupported engine) or an architecture with no published image for that runtime (e.g. exotic arch, or windows containers).

Common situations: Passing a custom/typo'd runtime name to --runtime; requesting an arch like riscv64 or armv7 that colima ships no image for; a newer runtime that only exists in later colima releases' images.txt.

Related errors


AI-assisted analysis of abiosoft/colima@c3a5f9184d (2026-08-15). Data as JSON: /api/errors/a9cdbf82ad5b82e4. Report an issue: GitHub.