Home › Docker

no matching manifest for linux/arm64/v8 in the manifest list entries — how to fix

Error response from daemon: no matching manifest for linux/arm64/v8 in the manifest list entries

Quick fix: Run it under emulation: docker pull --platform linux/amd64 image:tag (or platform: linux/amd64 in docker-compose). Better: use a tag/image that publishes your architecture, or build locally.

What it means

Docker images can publish several variants (amd64, arm64, …) under one tag via a manifest list. Docker picks the one matching your machine. If there's no variant for your platform, the pull fails.

Check your platform and what the image offers:

docker info --format '{{.OSType}}/{{.Architecture}}'
docker manifest inspect mysql:5.7 | grep -A2 platform

Fix 1: run the other architecture under emulation

Docker Desktop (Mac/Windows) includes QEMU emulation:

docker pull --platform linux/amd64 mysql:5.7
docker run --platform linux/amd64 mysql:5.7

docker-compose:

services:
  db:
    image: mysql:5.7
    platform: linux/amd64

On Linux, install emulators first:

docker run --privileged --rm tonistiigi/binfmt --install all

Emulation works but is slower.

Fix 2: use an image that supports your architecture

Fix 3: build it yourself for your platform

If you control the Dockerfile, build multi-arch images with buildx:

docker buildx create --use
docker buildx build --platform linux/amd64,linux/arm64 -t you/app:latest --push .

If you force the wrong platform without emulation, the container fails with exec format error.

Last updated 2026-10-27.