逐个推送Docker映像
向后兼容性
要了解Artifactory 7.21.3中标准Docker Pull REST API是如何工作的,请参见使用Docker Build推送多架构Docker镜像.
你可以推送多架构Docker镜像,使用清单列表
文件,官方称为fat舱单文件
Docker),它引用镜像的特定平台版本的镜像清单。有关更多信息,请单击在这里.
推送多架构Docker镜像的过程与标准Docker Push过程类似,但有一些例外:
- 每个体系结构都有一个不同的标签。
- 在所有的架构都被构建和推动之后,单个的
胖清单文件
',其中包含所有带有相关标签的图像。 - 推完后
“脂肪
清单文件的
,图像将使用给定的标签发布。
$ 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
的示例码头工人buildx
API的使用。
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
一个形象
映像A在构建期间被推送。
docker.artifactory < domain_name > /测试/ busybox: 1.33 amd64
人工复制图像并添加
“linux”
标签。docker.artifactory。< domain_name > /测试/ busybox: 1.33 -linux-amd64
B图像
映像B在构建期间被推送。
docker.artifactory。< domain_name > /测试/ busybox: 1.33 s390x
人工复制图像并添加'
linux的
标签。artifactory.us…< domain_name > /测试/ busybox: 1.33 -linux-s390x