云客户?
免费开始>
在MyJFrog中升级>
云的新功能>







概述

JFrog Artifactory支持以下方法将多架构Docker镜像推送到Docker注册表:

页面内容


逐个推送Docker映像

向后兼容性

要了解Artifactory 7.21.3中标准Docker Pull REST API是如何工作的,请参见使用Docker Build推送多架构Docker镜像

你可以推送多架构Docker镜像,使用清单列表文件,官方称为fat舱单文件Docker),它引用镜像的特定平台版本的镜像清单。有关更多信息,请单击在这里

推送多架构Docker镜像的过程与标准Docker Push过程类似,但有一些例外:

  1. 每个体系结构都有一个不同的标签。
  2. 在所有的架构都被构建和推动之后,单个的胖清单文件',其中包含所有带有相关标签的图像。
  3. 推完后“脂肪清单文件的,图像将使用给定的标签发布。
$ docker push domain/docker/multiarch-image:amd64 $ docker build -t domain/docker/multiarch-image:$ docker manifest create \ domain_name:port1/docker/multiarch-image:tag \——modify domain/docker/multiarch-image:amd64 \——modify domain/docker/multiarch-image:arm64 \ $ docker manifest push domain/docker/multiarch-image:my-tag . port/docker/multiarch-image:arm64

使用Docker Buildx批量推送图像CLI

从Artifactory 7.21.2及更高版本开始,Artifactory支持码头工人buildx命令,允许你创建和上传Docker。清单列表到Artifactory中的Docker注册表。码头工人buildx允许您使用单个命令构建和推送多体系结构映像,而不必单独构建和推送每个体系结构映像。有关更多信息,请参见使用buildx

支持码头工人buildx, Artifactory将图像的每个架构保存在以下路径结构下,并附带标签这包括最初发布的标记、映像操作系统和映像体系结构。

imageName: tag-os-arch

的示例码头工人buildxAPI的使用。

Docker buildx build——platform linux/amd64,linux/arm64——tag domain/ Docker /multiarch-image:tag——output=type=image,push=true——push。

使用Docker Build推送多架构Docker镜像

从Artifactory版本7.21.3及更高版本开始,如果您继续使用码头工人建造,所有推送的图像都将被复制,并且架构标签将自动添加到每个图像中。

在下面的示例中,使用Docker Build推送以下映像将导致人工自动复制图像和添加linux标记到每个图像。

列表清单
docker.artifactory。< domain_name > /测试/ busybox: 1.33
一个形象
  1. 映像A在构建期间被推送。

    docker.artifactory < domain_name > /测试/ busybox: 1.33 amd64


  2. 人工复制图像并添加“linux”标签。

    docker.artifactory。< domain_name > /测试/ busybox: 1.33 -linux-amd64
B图像
  1. 映像B在构建期间被推送。

    docker.artifactory。< domain_name > /测试/ busybox: 1.33 s390x
  2. 人工复制图像并添加'linux的标签。

    artifactory.us…< domain_name > /测试/ busybox: 1.33 -linux-s390x


  • 没有标签
版权所有©2023 JFrog Ltd.