设为首页 收藏本站
查看: 1228|回复: 0

[经验分享] 安装harbor,利用docker

[复制链接]

尚未签到

发表于 2019-2-20 10:15:41 | 显示全部楼层 |阅读模式
  harbor是单机上用的一种docker编排工具。

  前提:配置好yum源和epel源
  使用centos7系统,两台节点:
  node1:192.168.6.131
  node2:192.168.6.129
  安装docker:

  yum -y install  docker
  注意:安装docker时,可使用extra仓库中yum仓库安装,也可使用阿里云的镜像安装。
  默认使用extra仓库安装docker时,直接yum install docker即可,要使用阿里云安装docker,则:yum install dcoker-ce
  安装aliyun的yum源:
  wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
  wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  启动docker服务:

  systemctl start docker
  systemctl enable docker
  验证docker版本及相关信息:
  docker version
  docker info
  由于docker官网在国内访问慢,可配置加速器,使用aliyun:
  注册或登录阿里云账号,点击左侧的镜像加速器,将会得到一个专属的加速地址,且下面有使用的配置说明;
  创建docker配置文件:

  ]# vim /etc/docker/daemon.json
  {
  "registry-mirrors": ["https://26mcee8g.mirror.aliyuncs.com"]
  }
  验证docker加速:
  docker search centos
  注:docker相关的命令使用,后续在写篇文件。

  下载Harbor:

  下载地址为:https://github.com/vmware/harbor/releases
  由于网络较慢,在线安装很慢,推荐下载离线包安装。
  到github地址下载离线包:https://github.com/vmware/harbor
  wget https://github.com/vmware/harbor/releases/download/v1.2.2/harbor-offline-installer-v1.2.2.tgz
  安装harbor依赖包:

  yum install python-pip
  pip install docker-compose
  解压harbor安装包:
  tar xf harbor-offine-installer-v1.5.3.tgz
  cd harbor
  修改harbor配置文件:
  vim harbor.cfg
  hostname = 192.168.6.131
  harbor_admin_password = 123456
  其他不变。
  安装harbor:

  ./install.sh
  如果有报错,解决即可安装成功。
  浏览器访问:http://192.168.6.131

  输入用户名默认为admin,密码即在harbor.cfg中设置的密码harbor_admin_password。
  登录后:

  新建项目:
  名称为:baseimages,勾选:公开。

  同理,在node2上也做如上操作,且浏览器访问:http://192.168.6.129,创建相同的项目。
  在任意一台安装有docker的主机上:
  测试登录harbor服务器:
  编辑docker服务脚本文件:
  vim /usr/lib/systemd/system/docker.service
  添加:
  ExecStart= .... --insecure-registry 192.168.6.131 --insecure-registry 192.168.6.129 ...
  重启docker:
  systemctl daemon-reload
  systemctl restart docker
  登录harbor:
  docker login 192.168.6.131
  Username: admin
  Password: 123456
  显示:
  Login Succeeded
  登录成功。
  会自动生成认证文件:
  cat /root/.docker/config.json
  {
  "auths": {
  "192.168.6.131": {
  "auth": "YWRtaW46MTIzNDU2"
  }
  }
  }
  查看docker镜像:
  docker images
  向harbor的docker仓库上传镜像:
  docker push 192.168.6.131/baseimages/tomcat-base
  登录harbor服务页面,浏览器访问:192.168.6.131
  查看:

  点击项目名称baseimages进入:

  已经把docker服务器本地的镜像成功推送上去harbor仓库了。
  点击名称baseimages/tomcat-base,可见镜像的Tag:

  为node2上的harbor仓库准备镜像:
  docker tag 192.168.6.131/baseimages/tomcat-base:7.5.1804 192.168.6.129/baseimages/tomcat-base:7.5.1804
  向node2上的harbor仓库上传镜像:
  docker push 192.168.6.129/baseimages/tomcat-base:7.5.1804
  此时,拒绝上传,需要先登录node2上harbor仓库。
  登录node2上的harbor:
  docker login 192.168.6.129
  登录成功后,再次上传:

  docker push 192.168.6.129/baseimages/tomcat-base:7.5.1804
  即可成功。
  同理,在浏览器登录harbor仓库页面查看上传成功。

  如果要在任意一台docker服务器下载harbor仓库的镜像,还需要配置docker.service服务脚本文件:
vim /usr/lib/systemd/system/docker.service
添加:
ExecStart= .... --insecure-registry 192.168.6.131 --insecure-registry 192.168.6.129 ...
  一般只修改一台服务的配置文件,然后分发给其他主机,而不用每台主机手动修改配置文件:
  如把node1的配置文件复制到nod2上:
  scp /usr/lib/systemd/system/docker.service root@node2:/usr/lib/systemd/system/
  步骤同上,重启docker:
  systemctl daemon-reload
  systemctl restart docker
  下载镜像:
  docker pull 192.168.6.131/baseimages/tomcat-base:7.5.1804
  成功下载。
  上传也是同理,需要先登录后,才能有权限上传镜像,这样自建harbor的docker仓库就搭建完成了。
  以上实现了搭建2台docker仓库服务器。
  最后,在配置两台harbor服务器进行双向同步,现在其中一台harbor的web页面配置:
  实现目的:node2上harbor仓库有任何增加或删除的仓库变化,node1自动同步node2。

  在node1上配置:
  点击复制管理--》新建规则:


  在新建规则对话框中,填写:
  名称:可随意命名。

  描述:可随意写。

  源项目:即node1上的项目名称:baseimages

  目标:添加目标(node2上的项目地址):


  点击目标--》点击新建目标:

  新建目标填写:
  目标名:baseimages(node2上的项目名称)

  目标URL:http://192.168.6.129(即node2的ip地址)
  用户名:admin(登录harbor的用户名)
  命名:123456(登录harbor的密码)
  验证远程证书:(先不勾选)
  点击测试连接,成功后点击确定即可。

  再点击新建规则,回到新建规则界面:
  此时,目标:就可自动识别出,上一步设置的内容了。
  触发模式:选择即刻,下面两个复选框都勾选上(保证仓库数据同步)。

  在node1上设置了单项同步,同理,在node2上根据如上步骤设置向node1同步,使其node2自动同步node1上的仓库。
  (配置过程同上,省略)。
  验证双向同步:
  在node1上登录harbor,把docker镜像上传本地的harbor仓库:

  docker login 192.168.6.131
  输入用户名:admin
  输入密码:123456
  准备docker镜像:

  docker tag 1cef12f6c83e 192.168.6.131/baseimages/nginx-base:v1
  上传镜像:
  docker push 192.168.6.131/baseimages/nginx-base
  然后,稍等一会,较慢,在node2上的web页面观察仓库同步node1上的镜像了。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-674754-1-1.html 上篇帖子: 初识docker之如何运行一个容器 下篇帖子: 基于Docker的操作系统RancherOS
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表