Docker-harbor私有仓库
Docker 镜像 ?容器 ?仓库
仓库:保存镜像
私有,自定义用户的形式登录仓库。拉取或者上传镜像。(内部管理的用户)
Harbor:是VMware公司开发的,开源的企业级的Docker registry项目。
帮助用户快速的搭建一个企业级的Docker仓库的服务。
支持中文。
Harbor的特性。
- 基于角色进行控制,用户和厂库都是基于项目进行的,用户在每个想目中可以拥有不同的权限。
- 基于镜像,在不同的harbor实例之间进行复制。
- Harbor自带一个数据库,AD/LDAP(类似于数据库中的表),对已经存在的用户进行认证和管理。
- 镜像删除和垃圾回收,仓库中的镜像可以被删除(基于权限控制的)也可以回收镜像占用的空间。
- 图形化界面的,用户可以直接通过浏览器来对镜像仓库进行管理。
- 审计管理,所有对镜像仓库的操作都可以被记录溯源。
- 支持API操作,
?????API的程序接口,端口:主机和主机之间的通信 API是应用和应用之间的接口。管理员可以基于API调用接口,和更多的其他的程序进行集合。
Harbor的组件:
- proxy:安装完了harbor之后,他会自动生成一个nginx的容器,自动对外映射,80端口,nginx前段代理,子啊harbor当中, registry,UI,TOKEN,都在nginx的反向代理后面。通过nginx的代理,可以吧请求转发到后端不同应用。
- Registry:负责存储镜像,Docker pull/ push的命令都由其负责。用户进行访问控制,不同的用户对Docker镜像有不同的读写权限。Resgistry每次都会指向一个不同的token,强制用户每次的pull/push,都必须带一个合法的tocken(公钥对),resgistry会通过公钥对,进行解密验证,身份合法才能指定操作。
- CORE SERVICED:harbor的核心功能:提供三个服务:
- UI:提供图形化界面。
- Webhook:仓库上所有镜像的变化(增 删 改)都会传送给webhook。以实现子啊UI界面上。
- Token:签发每次push和pull的公钥对,用来和 仓库之间进行权限认证。
- Database:harbor-db,为核心组件coreservices 提供数据库存储服务,用户权限,审计日志Docker镜像的分组和项目信息。
- Job services:主要用于镜像的复制,本地镜像可以同步到远程harbor上
- Log collector(harbor-log)统一收集工具。
Harbor都是基于Docker容器化进行部署的,Docker-compose一键编排,安装部署

https:Docker-harbor默认的通信协议是https加密通信协议。
主

















角色:
访客:只能看,只有读权限
开发者:可以有读写权限。没有删除权限
维护人员:读写权限,修改其他配置的权限
项目管理员;对该项目拥有所有权限。
从docker2到docker1

docker1


