Jon*_*und 4 artifactory docker docker-registry
我有两个环境 X 和 Y,它们没有以任何方式连接。环境 Y 是气隙的。
有一个适当的发布流程,包括以下步骤:
docker pull所有已发布的 Docker 镜像。图像取自 Artifactory X。docker save所有已发布的 Docker 镜像。这可能会导致一个或多个 tar.gz 映像包存储在外部驱动器上。部署过程包括以下步骤:
docker load针对外部驱动器上的所有映像包运行。docker push所有图像。图像被推送到 Artifactory Y。我想知道是否可以通过直接从 Artifactory X 获取 Docker 映像并将其存储为文件来简化此过程,而不需要 Docker 守护进程,并且 - 再次无需 Docker 守护进程 - 直接将 Docker 映像文件上传到 Artifactory是吗?
一种可行的解决方案是使用skopeo,这是一种用于处理远程映像注册表的 CLI 工具。
使用以下命令将环境 X 中的图像直接保存到磁盘:
skopeo copy \
docker://docker.artifactory-x.example.com/busybox:latest \
docker-archive:./busybox:latest.tar
Run Code Online (Sandbox Code Playgroud)
使用以下命令将环境 Y 中的图像文件直接上传到 Artifactory:
skopeo copy \
--dest-creds myusername:mypassword \
docker-archive:./busybox:latest.tar \
docker://docker.artifactory-y.example.com/busybox:latest
Run Code Online (Sandbox Code Playgroud)
无需显式重新标记映像即可更改存储库前缀。
| 归档时间: |
|
| 查看次数: |
7842 次 |
| 最近记录: |