问题

在通过上一篇结合Cert-Manager完成Harbor的Https证书自动签发 文章,
部署好 Harbor 后,执行docker login出现了,如下错误:

ingress-nginx x509: certificate is valid for ingress.local, not harbor.lusyoe.com

解决

后来中间也是找了各种方法尝试,一开始还以为是cert-manager的问题,最后才无意中发现其实是nginx-ingress-controller的问题。
当默认没有指定nginx-ingress-controller使用的证书时,它使用的就是ingress.local。 修改nginx-ingress-controller的values.yaml配置文件,添加额外的参数即可,如下:

1
2
extraArgs:
default-ssl-certificate: default/harbor-secret-tls

最后再通过docker登录就不会出现证书问题了。

docker login harbor.lusyoe.com