一、harbor:开源的企业级的docker仓库软件,仓库就是保持镜像的。
1.仓库分两种:私有仓库:运维用的最多
公有仓库
2.harbor是有图形化的,页面UI展示的一个工具,操作直观
3.注意点:harbor都是由容器构建的,所以安装harbor必须要有docker,docker-compose一键编排,所以也需要安装。
4.harbor特点:通过角色权限进行控制,用户和仓库都是基于项目进行组织,不同的用户在不同的项目中拥有不同权限;每个仓库之间可以通信,可以通信的仓库之间可以互相复制里面的镜像;打开的UI界面可以对镜像镜像删除,删除了之后也会释放本机的空间;可以用浏览器访问的图形化界面;所有对镜像仓库的操作都是有记录的也就是审计管理。
5.harbor的组件:(以下容器都是由容器运行,docker-compose一键拉取部署)
Registry:就是仓库,保持镜像,同时push(上传)和pull(下载镜像)
porxy:nginx的前端页面是nginx做的,在nginx的配置中做了反向代理,在浏览器不同的请求转发到不同的容器内
core service:harbor的核心功能,对用户进行授权,检测仓库内镜像的变化以及token(根据不同的权限基于不同的token),token就是保存用户的身份信息以及账户和密码。
database:数据库,负责存储和用户的权限,审计日志以及docker镜像的分组信息
JOB services:镜像复制
log collector:日志收集工具
二、部署
搭仓库
修改harbor配置文件:vim harbor.yml
harbor登录密码
编译安装
安装harbor
上传
打标签给nginx:1.22 /后面跟的是项目名称
用本地仓库登录
客户端docker2操作
拉镜像
三、角色
受限访客:只能看,不能上传,也不能下载,也没有其它权限
访客:拥有只读权限,可以拉取镜像,不能上传,也无法删除镜像
开发者:可以读写,但是不能删除
维护人员:有读写权限,也可以对项目的配置进行修改
管理员:读写、修改、删除都可以