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

Aberta Para iniciantes
#26,372 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
2/5
Tempo estimado
Meio dia
Facilidade para iniciantes
82/100
Tipo de issue
Documentação
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
docker, markdown
Domínio
documentation

Direção de pesquisa

Comece localizando a tabela Build drivers e a página OCI and Docker exporters na documentação do Docker. Verifique a redação ao redor e as orientações vinculadas sobre builds multiplataforma; em seguida, atualize ambas as páginas para descrever o suporte ao driver docker com o repositório de imagens do containerd, preservando a restrição para workers clássicos. Done significa que as páginas não se contradizem mais e cobrem corretamente os dois modos de armazenamento.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

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

Linguagem predominante
Markdown
Estrelas
4.7k
Forks
8.5k
Merge médio
2d 9h
PRs com merge (30d)
126

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de docker/docs

Todas as issues de docker/docs

Issues semelhantes

Mais issues de Documentation

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.