Skip to content

Build drivers table and OCI/Docker exporter page say the docker driver can't export tarballs or multi-platform images #26372

Open

Description

@fjvbn2003

Two pages say that the default docker driver can't do something it can do with the containerd image store:

  • Build drivers: the table leaves Tarball output and Multi-arch images empty for docker.
  • OCI and Docker exporters: "The docker driver doesn't support these exporters. You must use docker-container or some other driver."

With the containerd image store, which is the default for Docker Desktop and for fresh Docker Engine 29.0+ installations (containerd image store), both work with the docker driver. Multi-platform builds already says that no extra setup is needed in that case, so the pages disagree.

What I ran

Docker Desktop, Engine 29.7.2, buildx v0.36.1, containerd image store, builder desktop-linux (driver docker), FROM scratch + one COPY:

$ docker buildx build --builder desktop-linux --output type=oci,dest=out-oci.tar .        # exit 0, tar has index.json, oci-layout
$ docker buildx build --builder desktop-linux --output type=docker,dest=out-docker.tar .  # exit 0, tar has index.json, manifest.json, oci-layout
$ docker buildx build --builder desktop-linux --platform linux/amd64,linux/arm64 \
    --output type=oci,dest=out-multi.tar .                                              # exit 0, index.json has an image index

In moby, daemon/internal/builder-next/worker/containerdworker.go passes every exporter except moby to the BuildKit containerd worker, which has the oci and docker exporters. The classic worker (worker/worker.go) only has moby, local and tar, so the current text is still right for the classic storage drivers.

I didn't run a build on Docker Engine on Linux.

I can open a PR that marks these cells as supported with the containerd image store and updates the exporter page.

This report was prepared with the help of an AI assistant (Claude); I reviewed and verified it.

🤖 Generated with Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions