之前在部署完harbor之后登錄過程中,只遇到了x509問題,這個問題很好解決,添加證書認證即可。
后來我再次部署harbor時,登錄過程中,解決完x509問題后,又遇到了一個新問題。
[root@master2 ~]# docker login harbor.uqp.com
Username: admin
Password:
Error response from daemon: Get https://harbor.uqp.com/v2/: dial tcp 192.168.1.52:443: connect: connection refused
在網上搜了半天,要么是去編輯/etc/docker/daemon.json文件,要么是在docker.service文件中添加--insecure-registry,反復嘗試,沒有作用,還是會報443: connect: connection refused的錯誤。
然后檢查了IP及端口,可以ping通和telnet上,這說明也不是網絡的問題,那就是harbor本身的問題了,但奇怪之處在於,除了部署harbor的機器登錄不上之外,其它同網段的機器全部沒有問題,只要做了證書認證就都可以登錄成功。
於是重新啟動harbor:
以前在用docker私庫registry的時候,會遇到這個問題,harbor既然是倉庫也會遇到這個問題。
主要是,應該是http連接,所以,要修改docker倉庫的配置文件即可。
注意端口號,如果有,需要加上。
[root@k8s1 /]# cat /etc/docker/daemon.json
{
"insecure-registries": ["192.168.1.193"]
}
[root@master2 ~]# cd harbor/
[root@master2 harbor]# docker-compose down -v
[root@master2 harbor]# docker-compose up -d
[root@master2 harbor]# docker login harbor.uqp.com
Username: admin
Password:
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
總算可以成功登錄了,還真是操蛋的問題,有點奇葩。