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 仓库,还可以作为注册中心来使用。
评论