是否可以直接从Artifactory加载和保存Docker图像?

是否可以直接从Artifactory加载和保存Docker图像?,docker,artifactory,docker-registry,Docker,Artifactory,Docker Registry,我有两个环境X和Y,它们没有以任何方式连接。环境Y是空气间隙 发布流程包括以下步骤: 对所有已发布的docker映像运行docker pull。图像是从ArtifactoryX中提取的 从所有图像中重新标记并去除存储库前缀 对所有已发布的docker图像运行docker save。这可能会导致一个或多个tar.gz映像包存储在外部驱动器上 部署过程包括以下步骤: 对外部驱动器上的所有映像包运行docker load 重新标记所有图像并添加新的存储库前缀 对所有图像运行docker push。图像

我有两个环境X和Y,它们没有以任何方式连接。环境Y是空气间隙

发布流程包括以下步骤:

  • 对所有已发布的docker映像运行
    docker pull
    。图像是从ArtifactoryX中提取的
  • 从所有图像中重新标记并去除存储库前缀
  • 对所有已发布的docker图像运行
    docker save
    。这可能会导致一个或多个tar.gz映像包存储在外部驱动器上
  • 部署过程包括以下步骤:

  • 对外部驱动器上的所有映像包运行
    docker load
  • 重新标记所有图像并添加新的存储库前缀
  • 对所有图像运行
    docker push
    。图像被推送到人工Y

  • 我想知道是否有可能通过直接从Artifactory X获取Docker映像并将其存储为文件而不需要Docker守护程序,以及——同样没有Docker守护程序——直接将Docker映像文件上载到Artifactory Y来简化此过程?

    一个可行的解决方案是,用于处理远程映像注册表的CLI工具

    使用以下命令将环境X中的映像直接保存到磁盘:

    skopeo copy \
      docker://docker.artifactory-x.example.com/busybox:latest \
      docker-archive:./busybox:latest.tar
    
    skopeo copy \
      --dest-creds myusername:mypassword \
      docker-archive:./busybox:latest.tar \
      docker://docker.artifactory-y.example.com/busybox:latest
    
    使用以下命令将环境Y中的图像文件直接上载到Artifactory:

    skopeo copy \
      docker://docker.artifactory-x.example.com/busybox:latest \
      docker-archive:./busybox:latest.tar
    
    skopeo copy \
      --dest-creds myusername:mypassword \
      docker-archive:./busybox:latest.tar \
      docker://docker.artifactory-y.example.com/busybox:latest
    

    无需显式重新标记映像即可更改存储库前缀。

    一个可行的解决方案是使用CLI工具来处理远程映像注册表

    使用以下命令将环境X中的映像直接保存到磁盘:

    skopeo copy \
      docker://docker.artifactory-x.example.com/busybox:latest \
      docker-archive:./busybox:latest.tar
    
    skopeo copy \
      --dest-creds myusername:mypassword \
      docker-archive:./busybox:latest.tar \
      docker://docker.artifactory-y.example.com/busybox:latest
    
    使用以下命令将环境Y中的图像文件直接上载到Artifactory:

    skopeo copy \
      docker://docker.artifactory-x.example.com/busybox:latest \
      docker-archive:./busybox:latest.tar
    
    skopeo copy \
      --dest-creds myusername:mypassword \
      docker-archive:./busybox:latest.tar \
      docker://docker.artifactory-y.example.com/busybox:latest
    

    无需显式重新标记图像即可更改存储库前缀。

    看起来您没有触摸图像本身,只是在摆弄回购地址和标记名。你查过人工工厂的文件了吗?。有很多功能可以处理它。特别是如果是2台人工服务器。例如复制、促销等。正确,图像在导出和导入时需要重新标记。这两个Artifactory实例未连接,因此无法使用Artifactory提供的升级和复制功能。看起来您并没有触及映像本身,只是在摆弄repo地址和标记名。你查过人工工厂的文件了吗?。有很多功能可以处理它。特别是如果是2台人工服务器。例如复制、促销等。正确,图像在导出和导入时需要重新标记。两个Artifactory实例未连接,因此无法使用Artifactory提供的升级和复制功能。