通过将任何容器注册表迁移到Artifactory来扩展您的开发经验

轻松地将Docker Registry迁移到Artifactory

随着今天开发人员必须使用的可用包格式的范围越来越大,管理和维护这些工具的复杂性也在不断增加。JFrog Artifactory是一个通用的工件管理器支持所有主要的包格式它几乎适用于任何开发生态系统——包括Docker环境。

为了增强使用Docker的体验,您可以无缝迁移您的码头工人注册表Artifactory。

无论您使用的是亚马逊的ECR, Docker的DTR, Docker Hub,谷歌的GCR, Quay或任何基于通用令牌的注册表,这个过程可以像使用我们的命令一样简单Docker2Artifactory移居者。这包括Docker映像迁移以及选定源的权限迁移。迁移包括选择源的组、用户、权限和组织机器人(用于码头)。

确定您的源和身份验证方法

Docker2Artifactory迁移工具适用于各种注册中心,每种注册中心都有自己独特的操作模式和身份验证要求。因此,迁移的第一步将是确定您使用的注册表类型。请参阅下面的图表,以确定您应该使用的源和身份验证方法:

注册供应商 使用选项 身份验证方法
亚马逊 ecr AWS生成的令牌
谷歌 gcr 密钥文件
码头(quay.io) 码头 OAuth2访问令牌
码头(内部企业) quayee 超级用户用户名/密码或OAuth2访问令牌
其他(DTR, Artifactory等) 通用的 匿名或用户名/密码

它是如何工作的

一旦知道了源和身份验证方法的类型,就可以开始迁移了。您可能会问自己,这个工具到底在做什么?该工具的工作原理是在可用的地方使用通用的Docker REST api,在不可用的时候使用注册表提供的自定义api。该工具将使用您的凭据执行各种调用,并构建一个应该迁移的图像列表。一旦列表就位,它将调用各个工作人员同时下载映像并将其部署到指定的Artifactory存储库。该工具足够聪明,只迁移它需要的东西,不会覆盖现有的图像(除非您要求它这样做)。一旦该过程完成,它将生成一个报告,其中包括它发现的映像数量和成功迁移的映像数量。

只迁移您需要的存储库

您要确定要迁移什么,是源注册中心的全部内容还是只是一个子集。该工具的默认行为是搜索和迁移所有存储库的每个标记。您还可以选择提供存储库和/或存储库:标记组合的列表.如果指定的存储库名称不带标记,默认情况下将迁移该存储库的所有标记。在某些情况下,您不希望这样做,而只希望迁移特定的标记。在这些情况下,您所要做的就是指定一个存储库:标记组合,然后只导入该特定的标记。

一些例子

GCR

$ python dockermigration .py gcr my-gcr-permissions. pyJson https://my-new.artifactory/artifactory admin密码docker-local

ECR

$ aws ecr get-login -no-include-email docker login -u aws -p eyh…h9 https://113776848705.dkr.ecr.us-west-2.amazonaws.com $ python dockermigration .py ecr https://113776848705.dkr.ecr.us-west-2.amazonaws.com eyh…H9 https://my-new.artifactory/artifactory admin密码docker-local

通用(匿名)与图像文件

$ python dockermigration .py通用版https://registry-1.docker.io https://my-new.artifactory/artifactory管理员密码docker-local——image-file image-file.txt

具有证书的通用型

$ python dockermigration .py generic https://registry-1.docker.io https://my-new.artifactory/artifactory admin password docker-local——source-username someuser——source-password somepassword

迁移权限数据

一些注册中心内置了用户、组和权限管理。为了帮助您轻松过渡,您可以使用附带的SecurityMigrator工具将这些映射到Artifactory实例。这是目前支持的码头企业版而且DTR

关于如何使用这个工具以及它所提供的内容的所有细节和示例都可以在我们的公众中找到GitHub上的Docker2Artifactory项目

访问我们的网站旧金山的DockerCon6月12日至14日在我们的G22展位学习如何将您的集装箱迁移到Artifactory。