BugMedic

Docker “no matching manifest for linux/arm64”: run the right architecture

Check the image's published platforms, then run the amd64 variant under emulation or build a multi-platform image.

By BugMedic editorial teamLast source review: 2026-09-28macOS, Linux

The image has no ARM variant. Inspect its platforms with docker buildx imagetools inspect, run the amd64 build under emulation with --platform linux/amd64, or publish a multi-platform image with docker buildx build --platform linux/amd64,linux/arm64.

Try these fixes in order

01

Inspect the published platforms

Confirm the image's published platforms. If linux/arm64 is missing from the list, the pull can never succeed on your machine as-is.

docker buildx imagetools inspect <image>
02

Run under emulation when acceptable

For local development, run the amd64 variant explicitly. Docker Desktop runs it under emulation automatically.

docker run --platform linux/amd64 <image>
03

Find a native ARM variant

If emulation is too slow or the app misbehaves, look for an arm64-tagged variant of the same image or an alternative image that publishes one.

04

Publish multi-platform images

For your own images, build once for both architectures and push the manifest list, so every machine pulls its native variant automatically.

docker buildx build --platform linux/amd64,linux/arm64 -t <image> --push .

Interpret what you see

You are on Apple Silicon or another ARM machine

What it suggests: The registry returned the image's manifest list and none of the entries match your machine's architecture. The image simply was not published for ARM.

Next check: Inspect the image's platforms with docker buildx imagetools inspect <image>.

You only need the container for local development

What it suggests: Docker can run the amd64 variant through QEMU emulation with an explicit platform flag; it works but runs slower.

Next check: Retry with docker run --platform linux/amd64 <image>.

You control the image's Dockerfile

What it suggests: For images you build yourself, the durable fix is publishing both architectures from one build.

Next check: Rebuild with docker buildx build --platform linux/amd64,linux/arm64.

Why this happens

  • The image was published only for linux/amd64 and has no arm64 variant in its manifest list.
  • You are on an Apple Silicon (arm64) Mac or another ARM machine pulling an x86-only image.

Still not working?

Do not force every image to run under emulation in production; x86 emulation on ARM is measurably slower and can hide architecture-specific bugs. Prefer a native arm64 image or build multi-platform images for anything long-lived.

Official sources

These steps are based on the linked documentation and general diagnostics. BugMedic has not independently tested every product and system configuration. Review commands before running them.

Related Docker guides