How to fix ERROR: multiple platforms feature is currently not supported for docker driver in Docker

DockerINTERMEDIATEMEDIUMUpdated Dec 6, 2025ยท 182 views

This error occurs when attempting to build multi-platform Docker images using the default docker driver, which does not support multi-architecture builds. The solution is to create a new builder that uses the docker-container driver.

Quick fix

Fixes ERROR: multiple platforms feature is currently not supported for docker driver

docker buildx create --name multiplatform-builder --driver docker-container --bootstrap --use
  1. Create a new builder with docker-container driver
  2. Verify the builder is active
  3. Run your multi-platform build
  4. Set up QEMU for cross-platform emulation (if needed)
docker โ€” error
docker buildx create --name multiplatform-builder --driver docker-container --bootstrap --use
ERROR: multiple platforms feature is currently not supported for docker driver

What this error means

When you use `docker buildx build` with the `--platform` flag to target multiple architectures (like `linux/amd64,linux/arm64`), Docker needs a builder that supports multi-platform image creation. The default `docker` driver, which is built into the Docker daemon, only supports single-platform builds. The default docker driver has several limitations: - Cannot build for multiple platforms in a single command - Limited cache export capabilities - Cannot customize BuildKit version or configuration - Only supports local, tarball, and image exporters To build multi-platform images, you need to switch to the `docker-container` driver, which runs BuildKit in a dedicated container with full multi-platform support. This driver can use QEMU for cross-architecture emulation and supports all export formats. This error commonly appears when developers try to create images that run on both x86_64 (amd64) and ARM64 systems, such as when targeting both Intel/AMD machines and Apple Silicon Macs or AWS Graviton instances.

Typical symptoms

  • docker buildx build fails when using --platform with multiple architectures
  • Error appears immediately after running a multi-platform build command
  • Single-platform builds work fine, but multi-platform builds fail
  • CI/CD pipelines fail when trying to build cross-architecture images
  • Building for ARM on an AMD64 machine (or vice versa) fails with this error

Common causes

  1. Using the default docker driver which does not support multi-platform builds
  2. No custom builder has been created with docker buildx create
  3. A builder exists but uses the docker driver instead of docker-container
  4. The current builder selection is set to the default docker driver
  5. Docker Desktop containerd image store is not enabled (alternative fix)

How to fix "ERROR: multiple platforms feature is currently not supported for docker driver"

1Create a new builder with docker-container driver

Create a new buildx builder that uses the docker-container driver, which supports multi-platform builds:

bash
docker buildx create --name multiplatform-builder --driver docker-container --bootstrap --use

This command:
- Creates a new builder named multiplatform-builder
- Uses the docker-container driver (runs BuildKit in a container)
- --bootstrap starts the builder immediately
- --use sets it as the current builder

You should see output indicating the builder was created and started.

2Verify the builder is active

Confirm your new builder is set up and running:

bash
docker buildx inspect --bootstrap

Look for output showing:
- Driver: docker-container
- Status: running
- Platforms: multiple platforms listed (linux/amd64, linux/arm64, etc.)

You can also list all builders:

bash
docker buildx ls

The active builder will have an asterisk (*) next to its name.

3Run your multi-platform build

Now you can build for multiple platforms. Note that multi-platform images must be pushed to a registry (you cannot load them into your local Docker image store):

bash
docker buildx build --platform linux/amd64,linux/arm64 -t yourusername/yourimage:tag --push .

If you want to load a single-platform image locally instead:

bash
docker buildx build --platform linux/amd64 -t yourimage:tag --load .

The --push flag is required for multi-platform builds because Docker's local image store doesn't support multi-architecture manifest lists.

4Set up QEMU for cross-platform emulation (if needed)

If you're building for a platform different from your host (e.g., ARM on x86_64), you may need QEMU user-space emulation:

bash
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes

This registers QEMU binary handlers with the kernel, enabling your system to run binaries for other architectures. After running this, restart your builder:

bash
docker buildx rm multiplatform-builder
docker buildx create --name multiplatform-builder --driver docker-container --bootstrap --use

Docker Desktop users typically have QEMU already configured.

5Alternative: Enable containerd image store (Docker Desktop)

If you're using Docker Desktop, you can alternatively enable the containerd image store, which adds multi-platform support to the default driver:

1. Open Docker Desktop
2. Go to Settings (gear icon)
3. Navigate to Features in development (or General in newer versions)
4. Enable "Use containerd for pulling and storing images"
5. Click Apply & Restart

After enabling, you may be able to use multi-platform builds with the default driver. However, creating a dedicated docker-container builder is still recommended for more flexibility and consistent behavior across environments.

Advanced notes

### Understanding Build Drivers

Docker buildx supports several drivers:

| Driver | Multi-platform | Cache Export | Use Case |
|--------|---------------|--------------|----------|
| docker | No | Limited | Simple local builds |
| docker-container | Yes | Full | Multi-platform, CI/CD |
| kubernetes | Yes | Full | Kubernetes clusters |
| remote | Yes | Full | Remote BuildKit instances |

### Best Practices for CI/CD

In CI/CD pipelines, always create the builder explicitly rather than relying on defaults:

yaml
# GitHub Actions example
- name: Set up Docker Buildx
  uses: docker/setup-buildx-action@v3

- name: Build and push
  uses: docker/build-push-action@v5
  with:
    platforms: linux/amd64,linux/arm64
    push: true
    tags: user/app:latest

### Build Caching with docker-container

The docker-container driver supports advanced caching options:

bash
docker buildx build \
  --platform linux/amd64,linux/arm64 \
  --cache-from type=registry,ref=myregistry/myimage:cache \
  --cache-to type=registry,ref=myregistry/myimage:cache,mode=max \
  --push \
  -t myregistry/myimage:latest .

### Multiple Native Nodes for Better Performance

For production builds, using native nodes for each architecture is faster than QEMU emulation:

bash
docker buildx create --name mybuilder --node amd64-node --platform linux/amd64 \
  --driver docker-container
docker buildx create --append --name mybuilder --node arm64-node --platform linux/arm64 \
  DOCKER_HOST=ssh://arm64-server

### Troubleshooting Builder Issues

If your builder stops working or gets into a bad state:

bash
# Remove and recreate the builder
docker buildx rm multiplatform-builder
docker buildx create --name multiplatform-builder --driver docker-container --bootstrap --use

# Or prune all builders
docker buildx prune -a

### Base Image Compatibility

Ensure your base image supports all target platforms. Check with:

bash
docker manifest inspect --verbose alpine:latest | jq '.[].Platform'

If your base image doesn't support a platform, the build will fail at the FROM instruction.

Frequently asked questions

What does "ERROR: multiple platforms feature is currently not supported for docke" mean?
When you use docker buildx build with the --platform flag to target multiple architectures (like linux/amd64,linux/arm64), Docker needs a builder that supports multi-platform image creation. The default docker driver, which is built into the Docker daemon, only supports single-platform builds. The default docker driver has several limitations: - Cannot build for multiple platforms in a single command - Limited cache export capabilities - Cannot customize BuildKit version or configuration - Only supports local, tarball, and image exporters To build multi-platform images, you need to switch to the docker-container driver, which runs BuildKit in a dedicated container with full multi-platform support.
How do I fix "ERROR: multiple platforms feature is currently not supported for docke"?
This error occurs when attempting to build multi-platform Docker images using the default docker driver, which does not support multi-architecture builds. The solution is to create a new builder that uses the docker-container driver.
What causes "ERROR: multiple platforms feature is currently not supported for docke"?
Using the default docker driver which does not support multi-platform builds No custom builder has been created with docker buildx create A builder exists but uses the docker driver instead of docker-container
Is the "ERROR: multiple platforms feature is currently not supported for docke" error serious?
It is a medium-severity error โ€” more of a blocker than a risk. The steps above resolve it.

Official resources & further reading