1. 仓库简介
Docker Registry,它是所有仓库(包括共有和私有)以及工作流的中央Registry
- Repositories(仓库)可以被标记为喜欢或者像书签一样标记起来。
- 用户可以在仓库下评论。
- 私有仓库和共有仓库类似,不同之处在于前者不会在搜索结果中显示,也没有访问它的权限。只有用户设置为合作者才能访问私有仓库。
- 成功推送之后配置webhooks。
2. Docker Registry角色
Docker Registry有三个角色,分别是index
、registry
和registry client
。
2.1 Index
index 负责并维护有关用户帐户、镜像的校验以及公共命名空间的信息。它使用以下组件维护这些信息:
这也分解了较长的URL,以方便使用和验证用户存储库。
2.2 Registry
registry
是镜像和图表的仓库。然而,它没有一个本地数据库,也不提供用户的身份认证,由S3、云文件和本地文件系统提供数据库支持。此外,通过Index Auth service
的Token
方式进行身份认证。Registries可以有不同的类型。现在让我们来分析其中的几种类型:
Sponsor Registry
:第三方的registry,供客户和Docker社区使用。 Mirror Registry
:第三方的registry,只让客户使用。 Vendor Registry
:由发布Docker镜像的供应商提供的registry。 Private Registry
:通过设有防火墙和额外的安全层的私有实体提供的registry。
2.3 Registry Client
Docker充当registry客户端来负责维护推送和拉取的任务,以及客户端的授权。
3. registry部署
3.1 拉取镜像
报错net/http: TLS handshake timeout
修改docker配置,使用国内镜像 daocloud镜像加速器
容器隔离与限制
Cgroups 就是 Linux 内核中用来为进程设置资源限制的一个重要功能。 有意思的是,Google 的工程师在 2006 年发起这项特性的时候,曾将它命名为“进程容 器”(process container)。实际上,在 Google 内部,“容器”这个术语长期以来都被用于 形容被 Cgroups 限制过的进程组。后来 Google 的工程师们说,他们的 KVM 虚拟机也运行在 Borg 所管理的“容器”里,其实也是运行在 Cgroups“容器”当中。 这和我们今天说的 Docker 容器差别很大。 Linux Cgroups 的全称是 Linux Control Group。它最主要的作用,就是限制一个进程组能 够使用的资源上限,包括 CPU、内存、磁盘、网络带宽等等。 此外,Cgroups 还能够对进程进行优先级设置、审计,以及将进程挂起和恢复等操作。
在今天 的分享中,我只和你重点探讨它与容器关系最紧密的“限制”能力,并通过一组实践来带你认识 一下 Cgroups。 在 Linux 中,Cgroups 给用户暴露出来的操作接口是文件系统,即它以文件和目录的方式组织 在操作系统的 /sys/fs/cgroup 路径下。
$ mount -t cgroup cpuset on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset) cpu on /sys/fs/cgroup/cpu type cgroup (rw,nosuid,nodev,noexec,relatime,cpu) cpuacct on /sys/fs/cgroup/cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct) blkio on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio) memory on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory read more