当前私有仓库使用harbor且enable了ssl. 本地容器工具由docker切换到了podman. podman对比docker的各种优势此处不再赘述,这里主要讲一下podman本地配置问题.
下面看详细的配置,笔者是mac, 所以配置文件路径是$HOME/.config/containers/containers.conf

# 所有镜像源,这里包括国内镜像加速仓库地址和你的harbor私有仓库地址
[registries.search]
registries = ['docker.io', 'registry.cn-hangzhou.aliyuncs.com', 'yourharbor.com']

# 镜像加速网站配置为insecure
[registries.insecure]
registries = ['registry.cn-hangzhou.aliyuncs.com']

# 私有harbor仓库配置 主要是配置你的harbor仓库host和自签名ca证书
# tlsverify true 或者 false 其实都没影响
[registries.'yourharbor.com']
tlsverify = true
tls = "your harbor ca.crt file path"

配置完毕重启一下podman 然后测试, 注意此此处的证书是自签的,用常见的login命令

podman login yourharbor.com

总会出现如下错误(而且这里引号好像还是中文的, 非常诡异)

x509: “yourharbor.com” certificate is not standards compliant

解决办法是在podman所有指令后面加上--tls-verify=false

podman login yourharbor.com --tls-verify=false

猜想可能是podman对自签名证书不支持, 因为如果使用的是podman desktop 可以在 registry中添加私有仓库,笔者有试验过这种方式添加私有仓库,尝试连接的时候报如下错误

Unable to find auth info for https://yourharbor.com/v2/. Error: RequestError: self signed certificate

所以推测可能对自签证书不支持,但是增加--tls-verify=false足以解决自签证书问题,就不再深究.

GitHub 加速计划 / ha / harbor
23.24 K
4.68 K
下载
Harbor 是一个开源的容器镜像仓库,用于存储和管理 Docker 镜像和其他容器镜像。 * 容器镜像仓库、存储和管理 Docker 镜像和其他容器镜像 * 有什么特点:支持多种镜像格式、易于使用、安全性和访问控制
最近提交(Master分支:2 个月前 )
9e55afbb pull image from registry.goharbor.io instead of dockerhub Update testcase to support Docker Image Can Be Pulled With Credential Change gitlab project name when user changed. Update permissions count and permission count total Change webhook_endpoint_ui Signed-off-by: stonezdj <stone.zhang@broadcom.com> Co-authored-by: Wang Yan <wangyan@vmware.com> 7 天前
3dbfd422 Signed-off-by: wang yan <wangyan@vmware.com> 7 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐