Docker: “no matching manifest for windows/amd64 in the manifest list entries”

When working with Docker on Windows, you may encounter the following error message while trying to pull or run an image:

no matching manifest for windows/amd64 in the manifest list entries

This error can be confusing at first, especially if you’re using Docker Desktop on Windows and expect everything to “just work.” In this post, we’ll break down what this error means, why it happens, and how to resolve it.


🧠 What the Error Means

This error indicates that Docker is trying to pull a Windows-based image on a system or configuration expecting one, but the image you’re trying to use does not support the Windows/amd64 platform.

In simple terms:

Docker is looking for a Windows-compatible version of the image, but only finds Linux versions in the manifest list.


🤔 Why Does This Happen?

There are two common causes:

1. Docker Is Set to Use Windows Containers

Docker Desktop can run in two modes:

  • Linux containers
  • Windows containers

When Docker is in Windows container mode, it expects the images to be Windows-compatible. If the image only has a Linux version (e.g., nginx, alpine, ubuntu), you’ll get this error.

2. Image Doesn’t Support Your Platform

Some images may not include builds for windows/amd64, and Docker won’t find a matching manifest for your architecture and OS.


🛠️ How to Fix It

✅ Option 1: Switch to Linux Containers (Recommended)

If you’re trying to use Linux-based images (which is most common), make sure Docker is set to use Linux containers.

🔁 How to Switch:

  1. Right-click the Docker icon in the system tray.
  2. Click “Switch to Linux containers…”
  3. Wait for Docker to restart in Linux mode.
  4. Retry your command.

✅ Option 2: Use a Windows-Compatible Image

If you need to use Windows containers, make sure the image you’re pulling actually supports Windows.

You can search for alternative images on Docker Hub or check the manifest entries:

docker manifest inspect <image-name>

Look for platform entries like "os": "windows", "architecture": "amd64".


🧪 Bonus: Forcing the Platform

Docker supports the --platform flag to manually specify which platform to pull or run for:

docker run --platform linux/amd64 ubuntu

This can work only if Docker is running in Linux container mode.


✅ Summary

ProblemCauseSolution
no matching manifest for windows/amd64Docker is expecting Windows containers, but image is Linux-basedSwitch Docker to Linux container mode
Image doesn’t support Windows/amd64The image isn’t built for WindowsUse an alternative image that supports Windows
Using wrong --platformArchitecture/platform mismatchUse --platform carefully or switch modes

💡 Final Thoughts

This error is a good reminder that Docker images are OS and architecture specific, and your Docker daemon needs to match that environment. Most developers use Docker for Linux-based containers—even on Windows—so switching to Linux containers is often the quickest fix.

Make sure you know which mode your Docker Desktop is in and verify the platform support of the image you want to use.

Sharing Is Caring:

Leave a Comment