有没有办法使用 docker manifest-list 在 ECR 中构建多架构镜像?
Is there a way to use docker manifest-list to build multi-arch images in ECR?
我正在尝试使用 Amazon ECR 来存储我的图像。
现在,我希望我的 image:tag 能够使用不同的操作系统和架构,例如 linux/amd64、linux/arm64、windows 等
当我使用 docker 时这很好,但似乎我无法使其与 ECR 一起使用。
Docker 表示您可以将其推送到不安全的注册表:
https://docs.docker.com/engine/reference/commandline/manifest/
命令失败:
docker buildx build --platform linux/amd64,linux/arm64 -t 5XXXXXXXXXX.dkr.ecr.ap-southeast-2.amazonaws.com/imagename:tag --push .
此命令成功:
docker buildx build --platform linux/arm64 -t 5XXXXXXXXXX.dkr.ecr.ap-southeast-2.amazonaws.com/imagename:tag --push .
多平台镜像可以推送到Docker Hub。
我想知道我们如何做到这一点。这是我的想法。如有不妥请指正
我们能否创建自己的清单文件,其中包含已放置在 ECR 存储库中的图像?
类似于:
image: image:multi-arch
manifests:
-
image: 5XXXXXXXXXX.dkr.ecr.ap-southeast-2.amazonaws.com/imagename:tag/i1-linuxamd64
platform:
architecture: arm64
os: linux
-
image: 5XXXXXXXXXX.dkr.ecr.ap-southeast-2.amazonaws.com/imagename:tag/i2-intelx86
platform:
architecture: intelx86
os: Windows
现在我们有了一个名为 image:multi-arch 的新图像。然后我们使用这个图像并期望它根据清单自动获取目标架构。
如果我将这个最终图像推送到 ECR,它会起作用吗?
难道我做错了什么?请随时指正。
ECR 目前不支持多架构镜像。您可以按照 this issue 上的 AWS 容器路线图进行更新。
推送多架构镜像:现已可用
https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-push-multi-architecture-image.html
我正在尝试使用 Amazon ECR 来存储我的图像。
现在,我希望我的 image:tag 能够使用不同的操作系统和架构,例如 linux/amd64、linux/arm64、windows 等
当我使用 docker 时这很好,但似乎我无法使其与 ECR 一起使用。
Docker 表示您可以将其推送到不安全的注册表:
https://docs.docker.com/engine/reference/commandline/manifest/
命令失败:
docker buildx build --platform linux/amd64,linux/arm64 -t 5XXXXXXXXXX.dkr.ecr.ap-southeast-2.amazonaws.com/imagename:tag --push .
此命令成功:
docker buildx build --platform linux/arm64 -t 5XXXXXXXXXX.dkr.ecr.ap-southeast-2.amazonaws.com/imagename:tag --push .
多平台镜像可以推送到Docker Hub。
我想知道我们如何做到这一点。这是我的想法。如有不妥请指正
我们能否创建自己的清单文件,其中包含已放置在 ECR 存储库中的图像?
类似于:
image: image:multi-arch
manifests:
-
image: 5XXXXXXXXXX.dkr.ecr.ap-southeast-2.amazonaws.com/imagename:tag/i1-linuxamd64
platform:
architecture: arm64
os: linux
-
image: 5XXXXXXXXXX.dkr.ecr.ap-southeast-2.amazonaws.com/imagename:tag/i2-intelx86
platform:
architecture: intelx86
os: Windows
现在我们有了一个名为 image:multi-arch 的新图像。然后我们使用这个图像并期望它根据清单自动获取目标架构。
如果我将这个最终图像推送到 ECR,它会起作用吗? 难道我做错了什么?请随时指正。
ECR 目前不支持多架构镜像。您可以按照 this issue 上的 AWS 容器路线图进行更新。
推送多架构镜像:现已可用
https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-push-multi-architecture-image.html