部署好harbor之后,本机使用docker login 可正常登录,但是在其他服务器登录harbor报错如下:
Error response from daemon: Get https://192.168.30.24/v2/: dial tcp 192.168.30.24:443: connect: connection refused
这里说拒绝连接,因为我是用http部署的harbor,这里是https://进行访问的,所以出现报错
解决方法:我们使用https登陆,自建ca证书。
1、我们使用openssl生成证书
mkdir /etc/certs
cd /etc/certs
openssl genrsa -out /etc/certs/ca.key 2048
openssl req -x509 -new -nodes -key /etc/certs/ca.key -subj "/CN=docker.harbor.com" -days 5000 -out /etc/certs/ca.crt
3、转换docker.harbor.com.crt为docker.harbor.com.cert,供Docker使用
openssl x509 -inform PEM -in docker.harbor.com.crt -out docker.harbor.com.cert
4、将服务器证书,密钥和CA文件复制到Harbor主机上的Docker证书文件夹中。您必须首先创建适当的文件夹
mkdir -p /etc/docker/certs.d/docker.harbor.com/
cp harbor.od.com.cert /etc/docker/certs.d/docker.harbor.com/
cp harbor.od.com.key /etc/docker/certs.d/docker.harbor.com/
cp ca.crt /etc/docker/certs.d/docker.harbor.com/
5、修改 harbor.yml 配置文件
vim harbor.yml
hostname: docker.harbor.com
https: port: 443
certificate: /etc/certs/ca.crt
private_key: /etc/certs/ca.key
harbor_admin_password:Harbor12345
6、重新启动Docker
systemctl restart docker
7、部署harbor
./install.sh
8、web页面使用https连接
image.png
注意:其他远程服务器docker login登陆harbor需要配置hosts解析和加载证书。
1、配置hosts解析
vim /etc/hosts
10.0.0.3 docker.harbor.com #增加一行域名解析
2、配置证书
mkdir -p /etc/docker/certs.d/docker.harbor.com #新建证书存放目录
cd /etc/docker/certs.d/docker.harbor.com #将证书上传到此目录
image.png
3、远程服务器执行登陆命令,显示Login Succeeded表示登陆成功。效果如下:
image.png
网友评论