Docker graphdriver store re-pushes zstd layers labelled gzip
With the graphdriver image store (overlay2), docker push of an image pulled with zstd layers writes a manifest labelling them gzip while the blobs stay zstd. Reproduced on Docker 29.9.1 and 29.9.2; the containerd store labels the same layers correctly. A BuildKit build with compression=zstd,force-compression=true from such an image fails with "failed to get compression blob \"zstd\": not found".
- Graphdriver store hard-codes the gzip media type in push_v2.go
- Reproduced on Docker 29.9.1 and 29.9.2; containerd store is correct
- BuildKit with force-compression fails; without it the wrong label propagates
- No fix in any release; the issue is labelled help wanted
Read next
Software