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

柔光的暖阳◎ 2022-12-08 05:55 173阅读 0赞

文章目录

    • 搭建Harbor仓库
      • Harbor是什么?为什么会用到Harbor?
    • Harbor的三种安装方式
    • 离线安装
    • 测试推送镜像

搭建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(已安装)

  1. #github下载docker-compose
  2. curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
  3. #给docker-compose可执行权限
  4. chmod +x /usr/local/bin/docker-compose
  5. #下载依赖包,默认安安装docker时已经下载
  6. yum -y install yum-utils device-mapper-persistent- data lvm2
  7. #验证docker-compose安装完成
  8. $ docker-compose -version
  9. docker-compose version 1.25.0, build 0a186604

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

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

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

三)修改harbor.yml

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

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

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

五)harbor的控制

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

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

在这里插入图片描述

在这里插入图片描述

测试推送镜像

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

  1. systemctl daemon-reload
  2. systemctl restart docker

登录harbor仓库

  1. [root@master ~]# docker login -u admin -p Harbor12345 172.16.46.111
  2. WARNING! Using --password via the CLI is insecure. Use --password-stdin.
  3. WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
  4. Configure a credential helper to remove this warning. See
  5. https://docs.docker.com/engine/reference/commandline/login/#credentials-store
  6. Login Succeeded
  7. #上传镜像到私有仓库
  8. $ docker tag 0901fa9da894 172.16.46.111/mynginx/nginx:v1.0
  9. $ docker push 172.16.46.111/mynginx/nginx:v1.0

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

发表评论

表情:
评论列表 (有 0 条评论,173人围观)

还没有评论,来说两句吧...

相关阅读