简述:
Docker 官方镜像仓库是用于管理公共镜像的地方,大家可以在上面找到想要的镜像,也可以把自己的镜像推送上去。但是有时候服务器无法访问互联网,或者不希望将自己的镜像放到互联网上,那么就需要用到 Docker Registry 私有仓库,它可以用来存储和管理自己的镜像。最近公司将项目全部打包成镜像有部署私有仓库服务的需求,经过几轮商讨,最终选择 Docker Harbor,Docker Harbor 有可视化的 Web 管理界面可以方便管理Docker 镜像操作也很方便简单,又提供了多个项目的镜像权限管理控制功能等。
Harbor 架构构成
- Proxy:Harbor 的 Registry、UI、token 等服务。通过一个前置的反向代理统一接收浏览器Docker 客户端的请求,并将请求转发给后端不同的服务。
- Registry:负责储存Docker镜像,并处理 Docker push/pull 命令。由于要对用户进行访问控制,即不同用户对Docker image有不同的读写权限,Registry会指向一个 token服务,强制用户的每次 Docker pull/push 请求都要携带一个合法的token,Registry会通过公钥对 token 进行解密验证。
环境:
两台主机:
192.168.50.66 master 服务端
192.168.50.53 lbin-nfs 客户端
两台主机同样操作
关闭防火墙
更改主机名
创建dockers rpm包目录
[root@master docker]# ll
重启
配置阿里云镜像加速
重启服务
获取Docker Compose容器的工具。
Harbor配置 服务端
成功
查看
浏览器访问
如果一切都正常,应该可以打开浏览器访问192.168.50.66的管理页面,默认的管理员用户名和密码是 admin/Harbor12345
创建一个新项目
- 输入用户名和密码登录界面后可以创建一个新项目。点击“+项目”按钮。
点击“确定”按钮,成功创建
可以使用 Docker 命令在Harbor本地通过 127.0.0.1 来登录和推送镜像了。默认情况下, Register 服务器在端口 80 上
登陆 harbor
下载镜像准备测试
给镜像打tag
查看一下有没有
刷新查看
客户端上传镜像
修改配置文件
重启服务
登陆访问
第一种
第二种
下载镜像准备测试
打标签
[root@lbin-nfs ~]# docker tag cirros 192.168.50.66/cccoooo/cirros:v22
上传
浏览器查看
Harbor 日常操作管理
点击“+项目”时按规范填写项目名称。项目级别:私有即不勾选(勾选后会变为"公开")。如果设置为公共仓库,则所有人对此项目下的镜像拥有读权限,命令行中不需要执行"Docker login"即可下载镜像,镜像操作与Docker hub 一致。
创建用户
设置权限
首先退出当前用户,然后使用上述创建的账户 登录。
退出
登陆
下载v1镜像
查看
查看日志