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

[经验分享] Docker镜像仓库Harbor实践

[复制链接]

尚未签到

发表于 2018-5-26 14:09:13 | 显示全部楼层 |阅读模式
  1,环境安装的软件及版本:

  linux : version centos7.3
  Docker:version 1.12.6
  Docker-compose: version 1.13.0
  Harbor: version 1.1.2
  Harbor是基于docker registry V2版本,所以要求docker版本不小于1.10.0,docker-compose版本不小于1.8.0,centos7 yum安装docker就可以满足版本要求。
  2,请自行安装centos7.3系统,设置好网络和防火墙
  网络需要能访问外网,
  vim /etc/sysconfig/network-scripts/ifcfg-eno16777736
  TYPE=Ethernet
  BOOTPROTO=static
  DEFROUTE=yes
  PEERDNS=no
  PEERROUTES=yes
  IPV4_FAILURE_FATAL=no
  IPV6INIT=yes
  IPV6_AUTOCONF=yes
  IPV6_DEFROUTE=yes
  IPV6_PEERDNS=yes
  IPV6_PEERROUTES=yes
  IPV6_FAILURE_FATAL=no
  NAME=eno16777736
  UUID=71c2c872-0682-4d95-a1dd-ec478dbd9385
  DEVICE=eno16777736
  ONBOOT=yes
  IPADDR=192.168.1.4
  NETMASK=255.255.255.0
  GATEWAY=192.168.1.1
  DNS1=8.8.8.8
  DNS2=114.114.114.114
  设置完成后重启网路
  systemctl restart network.service
  下面关闭防火墙
  setenforce 0
  systemctl stop firewalld
  systemctl disable firewalld
  3,设置yum源和安装docker
  cd /etc/yum.repos.d/
  wget http://mirrors.aliyun.com/repo/Centos-7.repo
  wget http://mirrors.aliyun.com/repo/epel-7.repo
  yum -y install epel-release
  yum install -y docker
  安装成后修改配置文件
  vim /etc/sysconfig/docker
  此版本docker默认是开启容器的selinux,所以要注释掉之前的
  注释掉其他项,然后添加下面一句,IP为虚拟机的网络IP地址
  OPTIONS='--insecure-registry 192.168.1.4'
  启动docker
  systemctl start docker
  docker pull busybox    下载busybox镜像
  docker images
  4,安装docker-compose
  cd /usr/local/bin/
  curl -L https://github.com/docker/compose/releases/download/1.13.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  下载完成后添加执行权限
  chmod +x /usr/local/bin/docker-compose
  接着检查安装的版本是否成功
  
  docker-compose --version
  docker-compose version 1.13.0, build 1719ceb
  看到版本正是1.13,这个版本可以选择很多,比如新的1.17.0版本就可以用下载的命令
  curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  命令docker-compose down -v     停止harbor服务
         docker-compose up -d          启动harbor服务

  

  5,安装harbor服务
  可以登录到GitHub上选择可用的版本,最新的是1.3.0,建议用一个老一点的版本1.1或者1.2。
  https://github.com/vmware/harbor/releases?after=v1.2.0-rc3
  下载离线版
  cd /usr/local/
  wget https://github.com/vmware/harbor/releases/download/v1.1.2/harbor-offline-installer-v1.1.2.tgz
  tar zxf harbor-offline-installer-v1.1.2.tgz
  进入目录修改配置
  cd harbor/

  vim harbor.cfg
  #只需修改hostname的ip即可,其他可以保持默认,默认登录密码Harbor12345
  hostname = 192.168.1.4
  ui_url_protocol = http
  db_password = root123
  max_job_workers = 3
  customize_crt = on
  ssl_cert = /data/cert/server.crt
  ssl_cert_key = /data/cert/server.key
  secretkey_path = /data
  admiral_url = NA
  email_identity =
  email_server = smtp.mydomain.com
  email_server_port = 25
  email_username = sample_admin@mydomain.com
  email_password = abc
  email_from = admin <sample_admin@mydomain.com>
  email_ssl = false
  harbor_admin_password = Harbor12345
  auth_mode = db_auth
  ldap_url = ldaps://ldap.mydomain.com
  ldap_searchdn = uid=searchuser,ou=people,dc=mydomain,dc=com
  ldap_search_pwd = password
  ldap_basedn = ou=people,dc=mydomain,dc=com
  ldap_filter = (objectClass=person)
  ldap_uid = uid
  ldap_scope = 3
  ldap_timeout = 5
  self_registration = on
  token_expiration = 30
  project_creation_restriction = everyone
  verify_remote_cert = on
  

  修改好配置文件后执行
  ./install.sh  
  harbor服务根据docker-compose.yml配置下载镜像和启动服务
  用docker images 查看下载的镜像

   DSC0000.jpg

  用docker-compose ps 查看服务启动情况

   DSC0001.jpg
  

  启动正常, 用浏览器访问http://192.168.1.4,默认是80端口
  (如果80端口已经被其他服务占用,可以修改docker-compose.yml文件中对应的端口映射)
   DSC0002.jpg
  登陆后界面
DSC0003.jpg

  新建项目test,非公开
DSC0004.jpg

  新建项目后,回到服务器上,用admin用户提交镜像到harbor的镜像仓库中,下面以busybox为例:

  第一步,登录    docker login 192.168.1.4 用admin,密码Harbor12345
  Username (admin): admin
  Password:
  Login Succeeded
  第二步,给镜像打项目标签tag
  docker tag docker.io/busybox 192.168.1.4/test/busybox:latest
  第三步,push到仓库

  docker push 192.168.1.4/test/busybox
  完成后回到前端页面,就可以查看到镜像已经在test项目下了

DSC0005.jpg

  

运维网声明 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-481437-1-1.html 上篇帖子: docker常用的命令(持续更新) 下篇帖子: 如何利用Docker构建基于DevOps的全自动CI
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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