Harbor使用公网证书
Posted 琦彦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Harbor使用公网证书相关的知识,希望对你有一定的参考价值。
Harbor使用公网证书
申请公网证书
因为Harbor使用nginx做代理,因此在公网证书审核通过后,在证书下载面板,单击Nginx服务器操作列的下载。
下载解压后您将会获得以下文件:
-
PEM格式的证书文件。
PEM格式的证书文件是采用Base64编码的文本文件,您可以根据需要将证书文件修改成其他格式。
关于证书格式转换的具体操作,请参见如何转换证书格式?。
-
KEY格式的证书私钥文件。
8750173_harborfly.site.key
8750173_harborfly.site.pem
修改harbor.yml文件
上传证书到服务器某个目录,然后修改certificate和private_key
# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
#hostname: reg.mydomain.com
# 修改为你的公网域名
hostname: harborfly.site
https:
# # https port for harbor, default is 443
port: 443
# # The path of cert and key files for nginx
certificate: /opt/certs/8750173_harborfly.site.pem
private_key: /opt/certs/8750173_harborfly.site.key
重启harbor
# 重新生成harbor配置
./prepare
# 重启harbor组件
docker-compose -f /opt/harbor/docker-compose.yml up -d --force-recreate
测试harbor的https
[root@gv213 ~]# curl https://harborfly.site/v2/_catalog
"errors":["code":"UNAUTHORIZED","message":"unauthorized to list catalog: unauthorized to list catalog"]
# 登录
docker login -uadmin -pSugon@Harbor123 harborfly.site
# 镜像拉取
[root@gv214 ~]# docker pull harborfly.site/cpu/fly:latest
latest: Pulling from cpu/fly
Digest: sha256:33616e9ebde35628be84f01921cd8e793e617f9597a0c019cd892d421626efab
Status: Downloaded newer image for harborfly.site/cpu/fly:latest
harborfly.site/cpu/fly:latest
# 镜像推送
[root@gv214 ~]# docker tag goharbor/harbor-exporter:v2.2.2 harborfly.site/cpu/goharbor/harbor-exporter:v666
您在 /var/spool/mail/root 中有邮件
[root@gv214 ~]# docker push harborfly.site/cpu/goharbor/harbor-exporter:v666
The push refers to repository [harborfly.site/cpu/goharbor/harbor-exporter]
f8aa70a31f23: Pushed
6d51d6a4915d: Pushed
d78d26f146cd: Pushed
928a3b9fae29: Pushed
65b25307a005: Pushed
v666: digest: sha256:acb56a9e6e09fec1306baf6a3740d1aebc29860423e9e66f570f1d1fd17e203c size: 1369
公网域名如何解析到内网服务器
首先DNS的作用是:客户端向dns服务器发送域名解析的请求dns服务器将对应的ip返回给客户端。
所以你只需要保证两个前提
1、你域名解析的p地址是可以访问到的不论是内网还是外网
2、访问这个域名的客户端可以正常访问到dns服务器(如果客户端压根不能连接外网,那只能自己搭
建内网的dns或者在host中定义)
方式一: 内网DNS服务器,增加配置
内网中搭建DNS服务器,将IP地址和域名在内网DNS中进行绑定,
方式二:修改内网主机上的host文件
/etc/hosts文件中,增加配置
[root@gv213 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# 增加域名映射
10.6.6.213 harborfly.site
以上是关于Harbor使用公网证书的主要内容,如果未能解决你的问题,请参考以下文章
Harbor安全:cfssl工具为Harbor颁发https证书