Skip to content

Incorrectly pulls amd64 image on arm64 machine. #584

@narlark

Description

@narlark

Describe the bug
On an arm machine when you pull the multi-arch image, it pulls the amd64 image instead of the arm64 image.

Steps to reproduce
Some weird behavior I'm noticing with upstream amazon/aws-node-termination-handler

On inspecting the manifest it's clearly a multi-arch image and does have an arm64 arch version available.


$ docker manifest inspect amazon/aws-node-termination-handler:v1.6.1
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
   "manifests": [
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 947,
         "digest": "sha256:7e91ba3ff76e3c540f8e2f1d3935b61fb05f831a9c36f42961a5d0e878e7c8a4",
         "platform": {
            "architecture": "amd64",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 947,
         "digest": "sha256:f83038b59db9cebe1b1904fc6f351e82f8aa9e6cdb09bd89d34996998ad5ab16",
         "platform": {
            "architecture": "arm",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 947,
         "digest": "sha256:c3e1c2d17a05c8ecb661658bd179be3784fe605da58ab7940e1303c0fb8eda70",
         "platform": {
            "architecture": "arm64",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 1752,
         "digest": "sha256:2a72849bcd7c46518523072f8ad3453c451030a1ddfd2dd9c95bdae3ffdfdc8e",
         "platform": {
            "architecture": "amd64",
            "os": "windows",
            "os.version": "10.0.17763.1282"
         }
      }
   ]
}

But when I pull the image on my arm64 machine, it pulls the amd64 image instead of the arm64 image.


$ docker pull amazon/aws-node-termination-handler:v1.6.1

$ docker image inspect amazon/aws-node-termination-handler:v1.6.1
.....

            ],
            "OnBuild": null,
            "Labels": null
        },
        "Architecture": "amd64",
        "Os": "linux",
        "Size": 36635931,
        "VirtualSize": 36635931,
        "GraphDriver": {
....

Expected outcome
Architecture should be arm64 instead of amd64.

Application Logs
The log output when experiencing the issue.

Environment

  • NTH App Version:
  • NTH Mode (IMDS/Queue processor):
  • OS/Arch: MacOS/arm64
  • Kubernetes version:
  • Installation method:

Metadata

Metadata

Assignees

Labels

Priority: MediumThis issue will be seen by about half of usersType: BugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions