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

[经验分享] 离线手动部署docker镜像仓库——harbor仓库(二)

[复制链接]

尚未签到

发表于 2019-2-21 09:12:43 | 显示全部楼层 |阅读模式
前言:
  在《离线手动部署docker镜像仓库——harbor仓库(一)》中,记录了离线部署harbor仓库的简单过程,这里主要记录修改默认访问端口80端口为1180端口的部署方式和注意点。
  实验环境:
harbor服务器系统:CentOS Linux release 7.4.1708 (Core)
harbor服务器IP:10.0.0.101
harbor版本:v1.5.0
docker版本:1.13.1
另外为了测试pull镜像,使用了另一台test102机器:10.0.0.102

部署过程:

1、下载安装包
  下载地址:http://harbor.orientsoft.cn/

2、上传并解压安装包
  将下载下来的安装包上传到服务器的/home目录,并解压。

[root@test101 home]# tar xf harbor-offline-installer-v1.5.0.tgz
[root@test101 home]# ll
总用量 843504
drwxr-xr-x. 4 root root       229 7月  30 15:48 harbor
-rw-r--r--. 1 root root 863747205 7月  30 15:39 harbor-offline-installer-v1.5.0.tgz
[root@test101 home]#
3、配置harbor和docker修改配置(重点)

3.1 编辑/home/habor/harbor.cfg,主要修改两个地方:

hostname = 10.0.0.101   #这里直接用的IP
harbor_admin_password = 123456   #登录harbor仓库的密码,默认密码是Harbor12345
3.2 修改默认的80端口,需要修改两个文件:
  1)修改/home/harbor/docker-compose.yml,将ports模块里面138行默认的80端口改成1180:

  2)修改/home/harbor/common/templates/registry/config.yml,在auth模块,第23行加入1180端口:

  3)修改/etc/sysconfig/docker,让docker指向10.0.0.101:1180(这里千万记得加上1180端口):


3.3 重启docker服务:

[root@test101 ~]# systemctl daemon-reload    #踩过的坑证明,这一步最好不要忘了,不然即使重启了docker,配置文件有可能也会不生效,导致各种奇怪的问题
[root@test101 ~]# systemctl restart docker
4、安装docker-compose

# curl -L https://github.com/docker/compose/releases/download/1.8.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
# chmod +x /usr/local/bin/docker-compose
5、 执行install.sh脚本,安装harbor仓库

[root@test101 harbor]# ./install.sh
  离线安装docker-compose和执行install.sh的注意事项都在《离线手动部署docker镜像仓库——harbor仓库(一)》里面说过,就不赘述了。

6、检查部署是否OK

6.1 检查容器启动状况,已经全部OK,1180端口也OK:


6.2 界面访问(加上1180端口哦):


7、测试使用

7.1 登录后创建一个test项目:


7.2 创建测试镜像并推送到仓库(这里也要带上端口号哟):

docker build -t 10.0.0.101:1180/test/bigdatacenter:latest /usr/local/src/bigdatacenter/
docker push 10.0.0.101:1180/test/bigdatacenter:latest
7.3 查看仓库,镜像已经存在


7.4 复制pull命令,在test102机器上测试pull命令:


=============下面的操作在test102机器上进行=============
  1、修改docker配置文件,指向10.0.0.101:1180:

  2、重启test102的docker服务:

[root@test102 ~]# systemctl daemon-reload  #这一步千万不能省
[root@test102 ~]# systemctl restart docker
  3、在test102机器上测试pull镜像:

[root@test102 ~]# docker images    #test102机器还没有任何的镜像文件
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
[root@test102 ~]#
[root@test102 ~]# docker pull 10.0.0.101:1180/test/bigdatacenter:latest  #测试pull镜像,切记带上1180端口号哟!!
Trying to pull repository 10.0.0.101:1180/test/bigdatacenter ...
latest: Pulling from 10.0.0.101:1180/test/bigdatacenter
53478ce18e19: Pull complete
d1c225ed7c34: Pull complete
c6724ba0c09a: Pull complete
de3b8705ee9f: Pull complete
c091a284f068: Pull complete
010503dbdd2d: Pull complete
Digest: sha256:ce823873379c519a583756783923dd160473a60fcf78dfd869e8b33f5198f237
Status: Downloaded newer image for 10.0.0.101:1180/test/bigdatacenter:latest
[root@test102 ~]#
[root@test102 ~]# docker images   #镜像文件拉取成功
REPOSITORY                           TAG                 IMAGE ID            CREATED             SIZE
10.0.0.101:1180/test/bigdatacenter   latest              6494ec224e74        About an hour ago   181 MB
[root@test102 ~]#
  注意:
注意:
注意:

这里有个问题,就是在harbor仓库复制pull命令的时候,是没有1180端口号的,命令是这样的:

docker pull 10.0.0.101/test/bigdatacenter:latest
  但是因为我们把默认的80端口改成了1180端口,使用复制下来的docker pull 10.0.0.101/test/bigdatacenter:latest命令去pull镜像,就会失败的,必须带上端口号!!!
不带端口号,会报这个错:

[root@test102 ~]# docker pull 10.0.0.101/test/bigdatacenter:latest
Trying to pull repository 10.0.0.101/test/bigdatacenter ...
Pulling repository 10.0.0.101/test/bigdatacenter
Error while pulling image: Get http://10.0.0.101/v1/repositories/test/bigdatacenter/images: dial tcp 10.0.0.101:80: getsockopt: connection refused
[root@test102 ~]#
  至此,修改端口号的harbor仓库就部署好了。
  后记
在部署过程中踩了一些坑,详见《总结—Harbor仓库部署和使用问题集锦》





运维网声明 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-675145-1-1.html 上篇帖子: docker 常用操作 下篇帖子: 【解决方式】Docker remove in process
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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