「CONTAINER-REGISTRY」- 镜像仓库 | Container Registry

认识

容器镜像可以通过容器镜像仓库进行存储和分享,如 Docker Hub、Google Container Registry 和 Amazon Elastic Container Registry 等。

Docker Registry,镜像仓库,用来存储镜像的仓库。

组成

WIP

性质

WIP

构建

自建的镜像仓库服务

Harbor |

第三方镜像仓库服务

Docker Hub | Container Image Library

Quay | Container Registry | 被 CoreOS 收购,目前提供无限制的共有仓库。对于私有托管,它提供一些可伸缩的计划。

ghcr | GitHub Container Registry

应用

常用 Namespace 命名

  • library, third-party, … 存储第三方镜像。
  • business-service, service-b, … 存储业务应用镜像。

我们自建镜像仓库的原因

云镜像仓库的费用问题

  • 我们极少使用云镜像仓库的功能:云商的镜像仓库功能特性较多,但是我们使用极少使用这些特性,比如全球镜像同步。对于我们来说是额外成本。
  • 云商计费方式需要购买更多资源:云商以命名空间与磁盘空间来收费。我们现在有 176 个项目,36 个用户组,我们需要购买更多的云镜像仓库资源。

对比自建镜像仓库,我们能够复用已有主机,仅需支付额外的磁盘费用。而无命名空间和其他限制。

云镜像仓库的技术限制

  • 云镜像仓库不支持多级目录:比如 aliyun.com/d3rm/dmon/docker-exporter:latest 是不合法的,只能使用 aliyun.com/d3rm/dmon_docker-exporter:latest 地址。这不利于我们组织和管理镜像。
  • 拉取频率限制:DockerHub 目前存在拉针对帐号及地址的取频率限制,已经无法满足需求。
  • 镜像拉取速度:受到网络环境的限制,镜像拉取速度比较慢。而各个 Registry Mirror 也受到 拉取频率限制 导致无法获取最新镜像。

对比自建镜像仓库,能够使用多级目录,以进行更好的镜像仓库管理。而且 Harboar 支持作为 Registry Mirror 功能,能降低访问 DockerHub 的频率,并能提高镜像拉取速度。

关于自建镜像仓库

  • 维护成本:无需频繁的维护与升级,所以应用维护成本并不高。
  • 资源成本:主机复用已有的 op-pub 主机;带宽使用已有带宽;磁盘采购 NAS 网络存储(方便迁移),200G ¥60.00/ 月。