simplify scaffolded docker-buildx to plain docker build --platform once the containerd image store is the default

Author: camilamacedo86Created Jul 25, 2026Updated Jul 25, 2026
Labelslifecycle/frozenkind/featurekind/cleanuptriage/blocked

docker buildx/BuildKit is not deprecated — it's the default builder. This issue is only about simplifying our multi-arch scaffold later, once upstream Docker makes it possible everywhere. Filing it so we don't miss the window.

Current scaffold (keep as-is for noes buildx create (docker-containerdriver) + a Dockerfile.cross sed + --platform … --push + buildx rm. This works on both image stores (overlay2 and containerd), whipped to unknown environments needs. Target. With the containerd image s--platform=linux/amd64,linux/arm64--push . does multi-arch with no buildx create and no Dockerfile.cross. We can drop all that once we can rely on it.

Do this when ALL of these upstream conditions land — watch these:

Then:

  • Replace the docker-buildx recipe with docker build --platform=$(PLATFORMS) --push …
  • Remove buildx create/use/rm and the Dockerfile.cross sed
  • Keep docker-build for single-arch

Refs: #2175, #4560 · multi-platform docs (https://docs.docker.com/build/building/multi-platform/) · containerd image store (https://docs.docker.com/engine/storage/containerd/)

Sources: docker/roadmap#371 (https://github.com/docker/roadmap/issues/371), moby/moby#48085 (https://github.com/moby/moby/discussions/48085), moby/moby#40379 (https://github.com/moby/moby/issues/40379), docker/cli deprecated.md (https://github.com/docker/cli/blob/master/docs/deprecated.md), kubebuilder #2175 (https://github.com/kubernetes-sigs/kubebuilder/issues/2175), kubebuilder #4560 (https://github.com/kubernetes-sigs/kubebuilder/issues/4560)

Source: kubernetes-sigs/kubebuilder