Harbor镜像仓库使用

小柒博客 评论88,6463字数 887阅读2分57秒阅读模式

​Harbor 简介

    ​Harbor是构建企业级私有docker镜像的仓库的开源解决方案,它是Docker Registry的更高级封装,它除了提供友好的Web UI界面,角色和用户权限管理,用户操作审计等功能外,它还整合了K8s的插件(Add-ons)仓库,即Helm通过chart方式下载,管理,安装K8s插件,而chartmuseum可以提供存储chart数据的仓库【注:helm就相当于k8s的yum】。另外它还整合了两个开源的安全组件,一个是Notary,另一个是Clair,Notary类似于私有CA中心,而Clair则是容器安全扫描工具,它通过各大厂商提供的CVE漏洞库来获取最新漏洞信息,并扫描用户上传的容器是否存在已知的漏洞信息,这两个安全功能对于企业级私有仓库来说是非常具有意义的。

一、使用管理员分配用户

使用管理员登录harbor控制台,进入"系统管理"-->>"用户管理",点击创建用户:

填写创建用户相关信息,即创建一个用户账号

二、新建项目

项目 -->> 新建项目

填写项目名称,并设置项目镜像仓库是否支持公开访问(这里设置为公开 )

创建完成后,可以看到所建的镜像项目的管理界面

可以针对该项目,添加访问成员,并赋予权限

其中,

1)概要:显示项目的总体容量,镜像仓库数量。

2)镜像仓库:用户实际管理所有的镜像。

3)成员:用于维护能访问该镜像仓库的成员管理以及不同的访问权限控制。

4)标签:用于管理镜像库中已经有的镜像标签。

5)配置管理:配置镜像仓库的基础控制,如镜像仓库是否公开访问、是否扫描漏洞、漏洞白名单及有效期等。

其他的不怎么常用,暂时不做介绍。

三、创建镜像仓库并推送镜像

前置条件:需要熟悉docker镜像推送和拉取的相关命令及操作。

获取推送的地址和命令

在项目管理界面中"镜像仓库"标签页下,点击右侧"推送镜像的docker命令",系统会提示推送镜像相关的命令,点击右侧的小方块,可复制命令。复制这个命令有个好处是,系统已经自动帮你拼好整个要推送的目标地址的URL,你只需要修改其中的SOURCE_IMAGE[:TAG]和IMAGE[:TAG]部分为你自己的镜像名称即可。

以推送hello-world镜像到镜像仓库为例:

[root@Ansible ~]# docker pull hello-world

[root@Ansible ~]# docker tag hello-world 172.168.1.249/test/hello-world:latest

[root@Ansible ~]# docker login -u test -p Harbor123456 172.168.1.249

[root@Ansible ~]# docker push 172.168.1.249/test/hello-world:latest

注:铭记docker推送镜像的三部曲

1、docker login 到镜像仓库服务器

2、docker tag 对本地镜像打tag标签到镜像仓库服务器

3、docker push 镜像到镜像仓库中

Docker登录Harbor镜像仓库

docker login -u 用户名 -p 用户名密码 Harbor服务器地址

打标签

docker tag hello-world:latest Harbor服务器地址/项目/镜像名称:标签号

推送镜像

docker push Harbor服务器地址/项目/镜像名称:标签号

推送成功后,仓库中显示如下:

点击推送上来的镜像名称,能看到具体不同tag的镜像,如下图

至此,Harbor推送镜像操作完成。

若文章图片、下载链接等信息出错,请在评论区留言反馈,博主将第一时间更新!如本文“对您有用”,欢迎随意打赏,谢谢!

继续阅读
Wechat
微信扫一扫,加我!
weinxin
微信号已复制
微信公众号
微信扫一扫,关注我!
weinxin
公众号已复制
Docker最后更新:2024-1-24
小柒博客
  • 本文由 小柒博客 发表于 2020年8月21日 15:21:24
  • 声明:本站所有文章,如无特殊说明或标注,本站文章均为原创。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。转载请务必保留本文链接:https://www.yangxingzhen.com/7481.html
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

拖动滑块以完成验证