docker 私有仓库 -- Harbor

Harbor简介

Harbor是由VMware公司开源的容器镜像仓库,它在Docker Registry的基础上进行了企业级扩展,包括基于角色的权限控制、AD/LDAP集成、可视化管理界面、日志审计等,它同Docker Registry一样提供容器镜像的存储及分发服务,但与Docker Registry有很多不同,Harbor进行了不少优化及改进,主要差别如下:
1)传输效率优化
Harbor根据容器镜像每层的UUID标识进行增量同步,而不是全量同步,减少带宽及其他资源占用。
2)镜像仓库水平扩展
由于上传、下载镜像文件涉及大量的耗时I/O操作,当用户对性能有较高要求时,需要创建多个Registry,通过负载均衡器将访问压力分发到不同的Registry,同时多个Registry存储时进行镜像文件的同步,便于水平扩展。
3)用户认证
Harbor在Docker Registry的基础上扩展了用户认证授权的功能,用户在Harbor中进行访问需要携带token,以增强安全性。
4)镜像安全扫描
上传到Harbor上的镜像文件能够通过clair的安全扫描,以发现镜像中存在的安全漏洞,并提高镜像文件的安全性。
5)提供Web界面以优化用户体验
Registry只提供命令行方式,没有操作界面,而Harbor提供用户界面,可以支持登录、搜索功能,镜像分类管理包括区分公有、私有镜像等功能,优化了用户管理及操作体验。

Harbor架构介绍

在这里插入图片描述
Harbor由5个组件构成
(1)Proxy
Proxy是镜像仓库核心服务(Registry、UI、token等)的前端访问代理,通过这个代理可统一接收客户端发送来的请求,并将此请求转发给后端不同的服务进行处理。
(2)Registry
Registry是容器镜像仓库,负责Docker镜像存储,响应镜像文件上传及下载操作,但是在访问过程中会进行访问权限控制,用户每次执行docker pull/push请求都要携带一个合法的token。为了增强安全性,Registry会通过公钥对token进行解密验证,解密通过后才能进行相应的操作。
(3)Core Services
Core Services是Harbor的核心服务,主要包括如下功能:
■ UI: 图形化界面,根据用户的授权采用可视化方式管理镜像仓库中的各个镜像(image)文件。
■ token服务: 根据用户权限给每个镜像操作请求生成token。Docker客户端向Registry服务发起的请求如果不包含token会被重定向到这个token服务,获得token后再重新向Registry进行请求,这个token是后续操作的唯一合法身份,直到token超时或用户退出当前会话。
■ webhook: 主要用来实时监控Registry中镜像文件的状态变化。在Registry上配置webhook,通过webhook把image状态变化传递给UI模块。
(4)Database
为核心服务提供数据库存储及访问能力,负责存储用户权限、审计日志、Docker image分组信息等数据。
(5)Log Collector
负责收

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值