harbor配置https(官方方法)


#注意,全部使用hosts方式用ip来映射域名

 

1、修改host(

192.168.8.8修改为你自己harbor本机的ip
reg.frame4j.local修改成你自己想要配置的域名

echo "192.168.8.8 reg.frame4j.local" >> /etc/hosts

2、切换到harbor的路径,方便后续操作。

cd /usr/local/harbor

3、生成CA私钥

openssl genrsa -out ca.key 4096

4、继续生成(域名改成自己上面改的)

openssl req -x509 -new -nodes -sha512 -days 3650 \ -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=reg.frame4j.local" \ -key ca.key \ -out ca.crt

5、生成一个服务器私钥(域名改成自己上面改的)

openssl genrsa -out reg.frame4j.local.key 4096

6、继续生成(域名改成自己上面改的)

 openssl req -sha512 -new \ -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=reg.frame4j.local" \ -key reg.frame4j.local.key \ -out reg.frame4j.local.csr

7、生成X509 v3的密钥文件(域名改成自己上面改的)

cat > v3.ext <<-EOF authorityKeyIdentifier=keyid,issuer basicConstraints=CA:FALSE keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment extendedKeyUsage = serverAuth subjectAltName = @alt_names [alt_names] DNS.1=reg.frame4j.local DNS.2=reg.frame4j.local DNS.3=hostname EOF

8、使用v3.ext文件生成你harbor主机密钥(域名改成自己上面改的)

openssl x509 -req -sha512 -days 3650 \ -extfile v3.ext \ -CA ca.crt -CAkey ca.key -CAcreateserial \ -in reg.frame4j.local.csr \ -out reg.frame4j.local.crt

8、创建 /data/cert目录为了给harbor.yml使用

mkdir -p /data/cert

9、执行复制命令,将证书复制到/data/cert下(域名改成自己上面改的)

cp reg.frame4j.local.crt /data/cert/
cp reg.frame4j.local.key /data/cert/

10、为docker生成对应的证书给它使用(域名改成自己上面改的)

openssl x509 -inform PEM -in reg.frame4j.local.crt -out reg.frame4j.local.cert

11、在docker所在机器创建对应目录(域名改成自己上面改的)

mkdir -p /etc/docker/certs.d/reg.frame4j.local/

12、复制证书到目录下

cp reg.frame4j.local.cert /etc/docker/certs.d/reg.frame4j.local/
cp reg.frame4j.local.key /etc/docker/certs.d/reg.frame4j.local/
cp ca.crt /etc/docker/certs.d/reg.frame4j.local/

13、配置harbor.yml(按照如下修改,改成你自己的证书)

https: # https port for harbor, default is 443 port: 443 # The path of cert and key files for nginx certificate: /data/cert/reg.frame4j.local.crt private_key: /data/cert/reg.frame4j.local.key

14、重启docker

systemctl restart docker

15、进入harbor目录下,重新预部署

./prepare

16、关闭harbor

docker-compose down -v

17、重启harbor

docker-compose up -d

18、docker登陆harbor

docker login reg.frame4j.local

提示success即可

 

##注意:harbor端口最好不要改会出各种问题

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM