Skip to content

docker buildx imagetools inspect fails for an image hosted in artifactory, whereas docker manifest inspect works #3311

@mureinik

Description

@mureinik

Contributing guidelines

I've found a bug and checked that ...

  • ... the documentation does not mention anything about my problem
  • ... there are no open or closed issues that are related to my problem

Description

With docker 28.2.x or 28.3.0, docker buildx imagetools inspect fails fetching the manifest for an image hosted in a private artifactory instance (URL and image name redacted in the examples below).

Expected behaviour

With docker 28.1.1, the same command works:

/ # docker -v
Docker version 28.1.1, build 4eba377
/ # docker --debug buildx imagetools inspect  [ARTIFACTORY_HOST]/[IMAGE]:[TAG]
DEBUG: do request
DEBUG: fetch response received
Name:       [ARTIFACTORY_HOST]/[IMAGE]:[TAG]
MediaType: application/vnd.oci.image.index.v1+json
Digest:    sha256:6d9fe41d1d75f7d0b88209e0b1504e2a783cfd2ffa290b94a424c6d1424a8a8c
           
Manifests: 
  Name:        [ARTIFACTORY_HOST]/[IMAGE]:[TAG]@sha256:60bcea53672841f922446f559daebf82686c3ac62b9388018359d9762a7fd447
  MediaType:   application/vnd.oci.image.manifest.v1+json
  Platform:    linux/arm64
               
  Name:        [ARTIFACTORY_HOST]/[IMAGE]:[TAG]@sha256:721788974adf85ecd6d95c2000f269dd4481ac34fae6b88058dd593c174e5d8b
  MediaType:   application/vnd.oci.image.manifest.v1+json
  Platform:    linux/amd64
               
  Name:        [ARTIFACTORY_HOST]/[IMAGE]:[TAG]@sha256:f1e80fa28ec10b398db4070d05ec3dbcd982730daa32a42915a8d1f8b43d007a
  MediaType:   application/vnd.oci.image.manifest.v1+json
  Platform:    unknown/unknown
  Annotations: 
    vnd.docker.reference.digest: sha256:60bcea53672841f922446f559daebf82686c3ac62b9388018359d9762a7fd447
    vnd.docker.reference.type:   attestation-manifest
               
  Name:        [ARTIFACTORY_HOST]/[IMAGE]:[TAG]@sha256:9f4ad8d1a7b6ba98ee0796fb809db39bb4d31894580409c217dca01d1e879e44
  MediaType:   application/vnd.oci.image.manifest.v1+json
  Platform:    unknown/unknown
  Annotations: 
    vnd.docker.reference.digest: sha256:721788974adf85ecd6d95c2000f269dd4481ac34fae6b88058dd593c174e5d8b
    vnd.docker.reference.type:   attestation-manifest

It's also worth noting that even with docker 28.3.0, docker manifest inspect works as expected:

/ # docker -v
Docker version 28.3.0, build 38b7060
/ # docker manifest inspect [ARTIFACTORY_HOST]/[IMAGE]:[TAG]
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.oci.image.index.v1+json",
   "manifests": [
      {
         "mediaType": "application/vnd.oci.image.manifest.v1+json",
         "size": 3347,
         "digest": "sha256:60bcea53672841f922446f559daebf82686c3ac62b9388018359d9762a7fd447",
         "platform": {
            "architecture": "arm64",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.oci.image.manifest.v1+json",
         "size": 3346,
         "digest": "sha256:721788974adf85ecd6d95c2000f269dd4481ac34fae6b88058dd593c174e5d8b",
         "platform": {
            "architecture": "amd64",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.oci.image.manifest.v1+json",
         "size": 566,
         "digest": "sha256:f1e80fa28ec10b398db4070d05ec3dbcd982730daa32a42915a8d1f8b43d007a",
         "platform": {
            "architecture": "unknown",
            "os": "unknown"
         }
      },
      {
         "mediaType": "application/vnd.oci.image.manifest.v1+json",
         "size": 566,
         "digest": "sha256:9f4ad8d1a7b6ba98ee0796fb809db39bb4d31894580409c217dca01d1e879e44",
         "platform": {
            "architecture": "unknown",
            "os": "unknown"
         }
      }
   ]
}

Actual behaviour

With docker 28.3.0 (also reproduced with 28.2.x), it fails fetching the manifest:

/ # docker -v
Docker version 28.3.0, build 38b7060
/ # docker --debug buildx imagetools inspect [ARTIFACTORY_HOST]/[IMAGE]:[TAG]
DEBUG: fetching layer
DEBUG: do request
DEBUG: fetch response received
DEBUG: fetch failed: content at https://[ARTIFACOTRY_HOST]/v2/[IMAGE]/manifests/sha256:6d9fe41d1d75f7d0b88209e0b1504e2a783cfd2ffa290b94a424c6d1424a8a8c not found: not found
ERROR: httpReadSeeker: failed open: content at https://[ARTIFACTORY_HOST]/v2/[IMAGE]/manifests/sha256:6d9fe41d1d75f7d0b88209e0b1504e2a783cfd2ffa290b94a424c6d1424a8a8c not found: not found

Buildx version

github.com/docker/buildx v0.25.0 faaea65

Docker info

(using the docker:28.3.0 image, connection to the daemon is not set up)
/ # docker info
Client:
 Version:    28.3.0
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.25.0
    Path:     /usr/local/libexec/docker/cli-plugins/docker-buildx
  compose: Docker Compose (Docker Inc.)
    Version:  v2.38.1
    Path:     /usr/local/libexec/docker/cli-plugins/docker-compose

Server:
error during connect: Get "http://docker:2375/v1.51/info": dial tcp: lookup docker on 192.168.65.7:53: no such host

Builders list

(using the docker:28.3.0 image, connection to the daemon is not set up)
/ # docker buildx ls
NAME/NODE   DRIVER/ENDPOINT   STATUS    BUILDKIT   PLATFORMS
default*                      error                

Cannot load builder default: error during connect: Head "http://docker:2375/_ping": dial tcp: lookup docker on 192.168.65.7:53: no such host

Configuration

N/A

Build logs


Additional info

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions