错误现象
[root@server2 ~]# docker login -u admin -p Harbor12345 http://192.168.111.10
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: Get https://192.168.111.10/v2/: dial tcp 192.168.111.10:443: connect: connection refused
解决方法
在docker系统服务添加安全进程
[root@server1 ~]# vim /usr/lib/systemd/system/docker.service
#修改第14行
ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry 192.168.111.10 --containerd=/run/container d/containerd.sock #中间添加--insecure-registry 192.168.111.10
重新加载守护进程并重启
[root@server1 ~]# systemctl daemon-reload
[root@server1 ~]# systemctl restart docker
Harbor私有仓库服务器上重新加载脚本
[root@server1 ~]# cd /usr/local/harbor
[root@server1 ~]# ./install.sh
登录
[root@server1 ~]# docker login -u admin -p Harbor12345 http://192.168.111.10
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded #登录成功
总结
出现这问题的原因 Docker Registry 交互默认使用的是 HTTPS,但是搭建私有镜像默认使用的是 HTTP 服务,所以与私有镜像交互时出现以下错误。