#如下从mirror registry拉取镜像的操作会很高效,同样的nginx镜像,实测在30second左右; #即使在没有缓存的情况下效果也不错,但此时日志中显示操作用户名不再是anonymous,而是前面已经登陆的账号user1(登陆的是私有registry); #且下载的镜像REPOSITORY也是”10.11.51.71/library/nginx”全称的形式,而不是docker hub默认的只有镜像名称 [root@test ~]# docker pull 10.11.51.71/library/nginx
2)查看日志web ui homepage—>日志,操作的是公共镜像,所以用户为anonymous,项目是默认的library。
3)查看harbor registry
#在harbor服务器查看 [root@harbor ~]# ll /data/registry/docker/registry/v2/repositories/library/
4)查看项目
web ui homepage—>项目—>library—>镜像仓库,操作的是公共镜像,项目是默认的library。
另外发现在项目中查看缓存有延迟现象,即已生效的缓存不会立即在web ui中显示。
六.问题 1. 本地登陆registry报错
[root@harbor ~]# docker login 10.11.51.71 Username: admin Password: Error response from daemon: Get https://10.11.51.71/v1/users/: dial tcp 10.11.51.71:443: getsockopt: connection refused
原因:docker login/pull/push等对registry的操作默认启用https,但这里harbor设置的是采用http。
解决方案:修改docker服务启动参数,在/etc/sysconfig/docker文件中的OPTIONS中增加"--insecure-registry 10.11.51.71" (centos7中默认没有/etc/sysconfig/docker文件,可以手工添加,同步修改启动文件/usr/lib/systemd/system/docker.service调用此参数文件)
参考文档:
harbor介绍:https://github.com/vmware/harbor
harbor安装&使用指导:https://github.com/vmware/harbor/blob/master/docs/installation_guide.md
docker-compose安装指导:https://docs.docker.com/compose/install/
docker-compose版本:https://github.com/docker/compose/releases/
harbor配置https:https://github.com/vmware/harbor/blob/master/docs/configure_https.md