使用Openshift CLI(OC)执行镜像同步报自签证书未信任错误
问题解决步骤
优先排查参数拼写错误
你手动添加的参数--certificate-authorty存在拼写错误,正确参数为--certificate-authority,拼写错误会导致OC工具忽略你指定的证书路径,这是加参数后依然报错的最常见原因。修正参数后重新执行命令即可验证。添加自签证书到系统信任根(永久生效方案)
OC工具会继承系统的根证书信任列表,将自签证书加入系统根信任后无需额外加参数即可正常访问:- RHEL/CentOS/Fedora系统执行命令:
sudo cp /certs/domain.crt /usr/local/share/ca-certificates/192.168.100.215.crt sudo chmod 644 /usr/local/share/ca-certificates/192.168.100.215.crt sudo update-ca-trust extract - Debian/Ubuntu系统执行命令:
sudo cp /certs/domain.crt /usr/local/share/ca-certificates/192.168.100.215.crt sudo chmod 644 /usr/local/share/ca-certificates/192.168.100.215.crt sudo update-ca-certificates
- RHEL/CentOS/Fedora系统执行命令:
配置容器工具专属证书路径
OC、Podman、Docker等容器工具会默认读取/etc/containers/certs.d/[镜像仓库地址:端口]/目录下的证书文件,手动创建对应目录即可:sudo mkdir -p /etc/containers/certs.d/192.168.100.215:5000 sudo cp /certs/domain.crt /etc/containers/certs.d/192.168.100.215:5000/ca.crt临时测试方案(生产环境禁用)
如果仅需要临时验证镜像同步逻辑,可以添加--insecure-skip-tls-verify参数跳过TLS证书校验:sudo oc image mirror --insecure-skip-tls-verify -a ${LOCAL_SECRET_JSON} --from-dir=${REMOVABLE_MEDIA_PATH}/mirror "file://openshift/release:${OCP_RELEASE}*" ${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}
内容的提问来源于stack exchange,提问作者anh_nguyenduc
相关产品推荐
相关产品推荐

