Harbor部署
仓库设置
部署Harbor
--set expose.ingress.hosts.core=registry.example.choerodon.io \
--set externalURL=https://registry.example.choerodon.io \
--set persistence.persistentVolumeClaim.registry.storageClass=nfs-provisioner \
--set persistence.persistentVolumeClaim.jobservice.storageClass=nfs-provisioner \
--set persistence.persistentVolumeClaim.database.storageClass=nfs-provisioner \
--set chartmuseum.enabled=false \
--set clair.enabled=false \
--set notary.enabled=false \
--set harborAdminPassword=Harbor12345 \
--version 1.1.3 \
--namespace c7n-system
证书配置
- 创建域名证书secret,请注意替换命令中
${KEY_FILE}
、${CERT_FILE}
为文件访问路径
kubectl create secret tls harbor-harbor-ingress -n c7n-system --key ${KEY_FILE} --cert ${CERT_FILE}
- 编辑 harbor-core 的 deployment 对象
......
# - name: ca-download
# mountPath: /etc/core/ca/ca.crt
# subPath: ca.crt
......
volumes:
# secret:
# secretName: "harbor-harbor-ingress"
# items:
# - key: ca.crt
# path: ca.crt
......
没有公网域名时使用自签名证书
没有公网域名是无法申请证书的,故只能配置本地Docker信任Harbor自签名证书,此方法需将会使用到该Harbor的主机都进行自签名证书信任配置。
- 访问 Harbor ,进入 library 项目,点击
注册证书
下载ca证书
-
- 将得到的
ca.crt
证书文件拷贝至其他会使用到该Harbor的主机上