golang: golang:1.12-alpine does not have layers for linux/arm64/v8

The result of running

docker run --rm weshigbee/manifest-tool inspect golang:1.12-alpine
...
4    Mfst Type: application/vnd.docker.distribution.manifest.v1+json
4       Digest: sha256:7cf1f7ccf392bd834eb91f02892f48992d3c2ba292c2198315a4637bb9454c30
4  Mfst Length: 6981
4     Platform:
4           -      OS: linux
4           -    Arch: arm64
4           - Variant: v8
4           - Feature:
4     # Layers: 0
...

Please note that the number of layers is zero. The same for golang:1.11-alpine

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 24 (12 by maintainers)

Most upvoted comments

I have seen this failure for several other images, so I don’t think it’s quite fixed? @thaJeztah @tianon

For example, nginx:1.19.0-alpine:

$ crane manifest nginx:1.19.0-alpine | jq . | grep v1 -C 5
      },
      "size": 1360
    },
    {
      "digest": "sha256:eff196a3849ad6541fd3afe676113896be214753740e567575bb562986bd2cd4",
      "mediaType": "application/vnd.docker.distribution.manifest.v1+json",
      "platform": {
        "architecture": "arm64",
        "os": "linux",
        "variant": "v8"
      },

This looks like a down-converted schema 1 image that was built 2020-06-02:

$ crane manifest nginx@sha256:eff196a3849ad6541fd3afe676113896be214753740e567575bb562986bd2cd4 | jq .history[0].v1Compatibility -r | jq .created
"2020-06-02T16:44:38.301452064Z"

I was thinking about just scanning the official images to look for all manifest lists that reference schema 1 images, but I am pretty sure I would hit rate limits pretty immediately 😄 – I’m sure this would be an easier query for a docker hub maintainer than to discover via the registry API, if someone is interested in enumerating and fixing these (can we backfill?).

I’m kind of surprised docker hub accepts this, but I understand this is a valid manifest list per the spec. I’m more surprised docker hub is still accepting schema 1 image uploads.

This is tangentially related to https://github.com/opencontainers/distribution-spec/issues/212#issuecomment-726701575 @justincormack

@jonjohnsonjr to help getting the ball rolling, could you open a ticket in our roadmap? https://github.com/docker/roadmap/issues

I think there’s a review session tomorrow for the roadmap, and I can bring it up

I’m kind of surprised the Hub still allowed a schema1 push 😅