是否需要Docker受信任的registry才能设置Docker Private Registry?

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

我想build立一个Docker Private Registry,但在阅读Docker的文档(和相关的 SO 问题 )之后 – 我不确定是否:

  • Docker Trusted Registry (DTR)是否需要?
  • 我可以在Docker免费计划下设置一个DTR 吗?

任何人都可以回答以上?

Docker Trusted Registry是Docker Inc.的商业产品。它包括本地registry服务器,与UCP产品的可选集成,RBAC,与用于映像签名的公证人(更名为Content Trust)的集成以及漏洞扫描。 没有DTR本身的免费或开源版本。


Docker确实有一个开源的registry产品,您可以下载并在自己的环境中作为容器运行。 它在docker集线器上可用。 运行这个和以下一样简单:

 $ 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 

然后你可以推/拉你的本地registry:

 $ 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 

请注意,这是configuration为不安全的registry,有更多的步骤,使其与TLS的安全性,并添加授权。 要从其他主机连接到它,您需要将TLS添加到registry中,或将您的IP作为dockerd的不安全registry更新其他docker主机。


如果您在云中发布公共图像,也可以使用Docker Hub本身作为registry。 一个以上的私人回购将需要一个有偿的计划。


也有registryAPI的第三方实现。 我知道的两个是Nexus和Artifactory。