Docker Trusted Registry是否必须设置Docker Private Registry?

时间:2017-12-15 17:22:32

标签: docker docker-registry dtr

不确定SO是否是提出以下问题的正确论坛。如果不是,请将它们移动到正确的位置。

我想设置一个Docker Private Registry,,但在阅读了Docker的文档后(以及related SO questions) - 我不确定是否:

有人可以回答上述问题吗?

1 个答案:

答案 0 :(得分:1)

Docker Trusted Registry是Docker Inc.的商业产品。它包括本地注册服务器,可选的与其UCP产品的集成,RBAC,与公证人(更名为内容信任)的集成,用于图像签名和漏洞扫描。 DTR本身没有免费或开源版本。

Docker确实有一个开源注册表产品,您可以在自己的环境中下载并作为容器运行。它可以在docker hub上找到。运行它很简单:

$ docker run -d -p 5000:5000 --restart=unless-stopped --name registry \
  -v registry-data:/var/lib/registry \
  -e "REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY=/var/lib/registry" \
  registry:2

然后您可以使用以下命令推送/拉到本地注册表:

$ docker tag your_image 127.0.0.1:5000/your_image:latest
$ docker push 127.0.0.1:5000/your_image:latest
$ docker pull 127.0.0.1:5000/your_image:latest

请注意,这是配置为不安全的注册表,还有更多步骤可以使用TLS保护它并添加授权。要从其他主机连接到它,您需要将TLS添加到注册表,或者使用您的IP更新其他docker主机作为dockerd的不安全注册表。

如果要在云中发布公共图像,也可以将Docker Hub本身用于注册表。不止一个私人回购需要付费计划。

还有registry api的第三方实施。我所知道的两个是Nexus和Artifactory。