天天看点

使用docker login 远程登录harbor

部署好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连接

使用docker login 远程登录harbor

注意:其他远程服务器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 #将证书上传到此目录

使用docker login 远程登录harbor

3、远程服务器执行登陆命令,显示Login Succeeded表示登陆成功。效果如下:

使用docker login 远程登录harbor

继续阅读