Docker Trusted Registry (简称DTR),中文Docker可信注册表,通俗的理解就是Docker镜像的仓库,Docker的企业级的镜像存储解决方案,你可以将它安装在防火墙之后,使用它来管理应用镜像,内置基于角色RABC访问控制系统

DTR架构

你可以把它部署到本地服务器或者云服务器中来管理和存储应用镜像,也可以把它部署到swarm集群woker Node中

DTR内部组件

Name	Description
dtr-api-<replica_id>	执行DTR的业务逻辑,为APi和web应用服务
dtr-etcd-<replica_id>	使用etcd  key-value 持久化存储配置信息
dtr-jobrunner-<replica_i> 清除后台任务
dtr-nginx-<replica_id>	使用Nginx接受http和https并代理其它DTR组件
dtr-notary-server-<replica_id>	接收,验证和信任元数据
dtr-notary-signer-<replica_id>	对信任元数据执行服务器端时间戳和快照签名 
dtr-registry-<replica_id>	实现Docker镜像合并和推送功能
dtr-rethinkdb-<replica_id>	用于持久化存储仓库的metadata的数据库

DTR数据卷

数据卷	描述
dtr-ca-<replica_id>	DTR根证书CA和密钥
dtr-etcd-<replica_id>	DTR 配置数据
dtr-notary-<replica_id>	证书和密钥组件
dtr-registry-<replica_id>	Docker镜像数据,如果DTR配置在本地存储
dtr-rethink-<replica_id>	仓库matedata数据
dtr-nfs-registry-<replica_id>	Docker镜像数据,如果DTR配置在NFS(Linux共享文件系统)

DTR网络

Name	Type	Description
dtr-br	bridge	允许DTR在同节点上通讯
dtr-ol	overlay	允许DTR组件在不同的节点上通讯和复制DTR数据

DTR镜像存储

DTR默认存储镜像在本地文件系统,你可以使用各种分布式文件系统
DTR-images

  • NFS
  • Amazon S3
  • Cleversafe
  • OpenStack Swift
  • Microsoft Azure

怎么与DTR交互

DTR暴露标准的 Docker API可以继续使用Docker CLI推送和合并镜像