当前位置:   article > 正文

搭建Harbor2.1.0最新版私有镜像仓库

搭建Harbor2.1.0最新版私有镜像仓库

搭建Harbor仓库

Harbor是什么?为什么会用到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的三种安装方式

  • 在线安装:从Docker Hub下载Harbor相关镜像,因此安装软件包非常小
  • 离线安装:安装包包含部署的相关镜像,因此安装包比较大
  • OVA安装程序(第三方):当用户具有vCenter环境时,使用此安装程序,在部署 OVA后启动Harbor

我们这里也是采用的离线安装!!!

离线安装

Harbor官方地址:https://github.com/goharbor/harbor/releases
下载所需的安装包: harbor-offline-installer-v2.1.0.tgz
一)准备的环境:docker(已安装)

#github下载docker-compose
curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

#给docker-compose可执行权限
chmod +x /usr/local/bin/docker-compose
#下载依赖包,默认安安装docker时已经下载
yum -y install yum-utils device-mapper-persistent- data lvm2
#验证docker-compose安装完成
$ docker-compose -version
docker-compose version 1.25.0, build 0a186604
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

二)解压已经安装的harbor-offline-installer-v2.1.0.tgz

tar -zxf harbor-offline-installer-v2.1.0.tgz -C /usr/local/
cd harbor
cp harbor.yml.tmpl harbor.yml
  • 1
  • 2
  • 3

PS: 这里跟以前不一样,没有了harbor.cfg文件,我们需要手动复制harbor.yml.tmpl在做修改即可

三)修改harbor.yml

PS: harbor作为私有仓库作用在公司内网,一般都是信任关系,没多大必要做https,使用http即可!
所以 把https相关的已经注释掉

在这里插入图片描述
四)安装harbor

./prepare
./install.sh
  • 1
  • 2

五)harbor的控制

docker-compose up -d 启动
docker-compose stop 停止
docker-compose restart 重新启动
  • 1
  • 2
  • 3

六)访问Harbor
访问地址:http://172.16.46.111
默认的账号密码:admin/Harbor12345

在这里插入图片描述

在这里插入图片描述

测试推送镜像

docker对于私有仓库默认都是使用https,所以添加在配置文件一行记录,声明一下
在这里插入图片描述

systemctl daemon-reload
systemctl restart docker
  • 1
  • 2

登录harbor仓库

[root@master ~]# docker login -u admin -p Harbor12345 172.16.46.111
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

#上传镜像到私有仓库
$ docker tag 0901fa9da894 172.16.46.111/mynginx/nginx:v1.0
$ docker push 172.16.46.111/mynginx/nginx:v1.0 

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

在这里插入图片描述
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/article/detail/41869
推荐阅读
相关标签
  

闽ICP备14008679号