Skip to content
Latchkey

Docker containerd Image Store Not Enabled - Multi-Platform Load Still Fails in CI

Some Docker features - notably loading multi-platform images locally - require the containerd image store (the containerd snapshotter). With the classic image store still active, those operations fail even though newer docs say they are supported.

What this error means

A multi-platform --load, or another feature that assumes the containerd store, fails on a daemon where the containerd snapshotter is not enabled. docker info does not list the containerd-backed storage driver.

docker buildx / docker info
ERROR: docker exporter does not currently support exporting manifest lists
# multi-platform --load works only with the containerd image store, which is not enabled:
# docker info | grep -i 'driver'  ->  Storage Driver: overlay2 (classic store)

Common causes

The classic image store is still in use

By default many daemons use the classic image store, which is single-platform. Multi-platform local images need the containerd image store, which must be turned on explicitly.

containerd snapshotter not enabled in daemon.json

The feature is gated behind features.containerd-snapshotter (or the equivalent Docker Desktop setting). Without enabling it and restarting, the daemon keeps the classic store.

How to fix it

Enable the containerd image store

Turn on the containerd snapshotter in daemon.json and restart the daemon.

daemon.json / Terminal
# /etc/docker/daemon.json
{ "features": { "containerd-snapshotter": true } }

sudo systemctl restart docker
docker info | grep -i 'driver'   # expect containerd-backed storage

Or avoid the feature on the classic store

If you cannot enable it, push multi-arch images and load single-arch only.

Terminal
docker buildx build --platform linux/amd64,linux/arm64 --push -t myorg/api:1.4.2 .
docker buildx build --platform linux/amd64 --load -t myorg/api:1.4.2 .

How to prevent it

  • Enable the containerd image store on runners that need multi-platform local images.
  • Otherwise push multi-arch and load single-arch.
  • Check docker info for the active storage backend in CI.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →