docker buildx to it with the remote driver.
It is based on a working setup validated on April 1, 2026 with real Windows container builds.
Known-good versions
containerd v1.7.30buildkit v0.29.0buildx v0.33.0
containerd v2.2.2 for this setup. In our Windows validation, buildkitd failed to start against it with:
Prerequisites
- Windows with Docker Desktop installed
- Docker Desktop switched to Windows containers
- An elevated PowerShell session
- Windows container prerequisites enabled (
Hyper-V, Windows Containers, and the defaultnatnetwork)
Install standalone BuildKit
Run this in an elevated PowerShell window:Allow non-admin clients to use the BuildKit pipe
Ifbuildctl works in the elevated shell but fails in a normal shell with Access is denied, re-register buildkitd like this:
Verify the builder
Run these in a normal PowerShell session:docker buildx versionshowsv0.33.0docker buildx inspect buildkit-windows --bootstrapshowsDriver: remote- the node reports
BuildKit version: v0.29.0 buildctl debug infosucceeds through\\.\pipe\buildkitd
Smoke test with a real Windows build
Troubleshooting
buildkitd fails to start with unknown service containerd.services.leases.v1.Leases
- You are likely using an incompatible
containerdversion such as2.2.2. - Reinstall
containerd v1.7.30.
buildx inspect buildkit-windows --bootstrap times out
- Check that the
buildkitdservice is running. - Check that
buildctl debug infoworks from the same shell. - If only the elevated shell works, re-register
buildkitdwith--group "Users".
buildctl says Access is denied
- The named pipe permissions are too restrictive.
- Re-register
buildkitdwith--group "Users"as shown above.
- Make sure Docker Desktop is actually in Windows containers mode.
- Confirm the builder reports
Platforms: windows/amd64. - Re-run the smoke test before debugging your own Dockerfile.