Docker注冊中心包含了一組可以讓用戶上傳和分享Docker鏡像的倉庫。除了知名度較高的公共倉庫,比如Docker Hub,還有其它不是很知名但很有特點的倉庫,它們既可以對外提供服務,也可以被部署成本地倉庫。
有些托管的注冊中心同時也提供私有倉庫,比如Docker Hub,它為免費用戶提供了一個私有倉庫,而付費用戶可以創建更多的私有倉庫。Docker Hub的結構模型有點類似Github,支持協作、組織以及組織里的分組。它可以跟Github和Bitbucket很好地集成起來。不過Docker Hub在訪問權限控制方面做得不是很好,也不支持與企業常用的LDAP或Active Directory這樣的認證/授權系統集成。
越來越多的云平臺供應商開始提供容器托管服務,容器注冊中心將成為他們的下一個功能關注點。AWS提供了EC2 Container Registry(ECR),Google云平臺提供了Google Container Registry。ECR集成了Elastic Container Service(ECS),為AWS帶來了伸縮性,同時提供了私有托管服務。Google的容器注冊中心提供了多項安全方面的特性,比如基于時間的認證token以及加密的鏡像存儲。
還有其它很多容器注冊中心,它們既可以提供托管服務,也可以作為本地注冊中心。
CoreOS的Quay.io。Quay提供了免費的公共倉庫,同時也有付費的私有倉庫,收費取決于倉庫數量的多少。Quay支持倉庫按照組織和團隊來劃分,并提供了相應的訪問權限控制。它還為工作流和查看鏡像生命周期提供了圖形用戶界面,為軟件交付管道提供了Web應用鉤子和事件通知機制。在安全認證方面,Quay支持Dex(一個OpenID和OAuth 2.0的供應商)、LDAP和OpenStack的Keystone。Quay的本地版叫作Quay Enterprise。 JFrog的Artifactory。Artifactory相比其它產品要貴一些。它支持LDAP、SAML認證和user/group級別的權限控制。 Gitlab的容器注冊中心。因為是Gitlab提供的,所以這款產品跟Gitlab工具和Gitlab CI工作流可以很好地兼容,而且允許Docker鏡像跟項目代碼放在同一個地方。有些容器注冊中心在某些方面比較擅長,比如安全。FlawCheck可以掃描Docker鏡像的漏洞。VMware的Harbor是一款提供了安全和標識管理功能的開源容器注冊中心,它還可以跟LDAP及其它現有系統集成,還支持活動審計。
Sonatype的Nexus也支持Docker倉庫,還可以作為注冊中心來使用。
查看英文原文:An Overview of Various Docker Registries