前言
Harbor内部默认是http方式进行通讯的,如果要配置https就需要用到证书。Harbor支持用三方签发证书,也支持使用自签发证书。
Linux openssl签发证书:https://blog.csdn.net/QianLiStudent/article/details/109291424
步骤
1、拿到应用证书和对应的私钥:
2、修改harbor.yml配置:
tip:在修改配置之前,先确Harbor组成保容器全部停止,否则后续操作会报错;
3、执行prepare重新生成一遍配置;
4、启动Harbor:
这时候直接去浏览器访问UI界面就可以以https的方式进行访问了,因为harbor.yml中指定的证书和私钥就是给Harbor UI的nginx配置的。
接下来给docker配置,因为Harbor仅仅是一个镜像仓库,我们还需要有docker环境和仓库做交互(比如pull、push镜像等)
5、在准备如下目录和证书:
tip:安装了docker之后就有/etc/docker目录,其下面是daemon.json和key.json。需要在下面继续创建certs.d/ip,这个ip即为证书创建过程中配置的ip,表示该证书仅能给该ip使用,然后将应用证书、应用私钥、CA证书放置到该目录下,并且应用证书和应用私钥要求名称为ip.cert和ip.key(目录和文件名为证书配置的ip,这个是固定格式,否则在docker访问的时候会解析不到文件)
6、在/etc/docker/daemon.json中配置“insecure-registries”将该ip添加为可信任的:
验证
重启docker.service之后登陆到Harbor: