Microk8s Registry使用问题:跨VM拉取镜像时HTTPS错误如何解决?
解决Docker访问Microk8s HTTP Registry的报错问题
第一步:修正第一台虚拟机(Microk8s节点)的操作
你之前执行的docker push命令缺失了仓库IP,正确命令应为:
docker push dirIPoftheVM:32000/vnf-image:registry
确保镜像成功推送到Microk8s Registry后,再进行后续操作。
第二步:在第二台虚拟机(未安装Microk8s)上配置Docker允许不安全Registry
报错核心原因是Docker默认强制使用HTTPS访问镜像仓库,但Microk8s启用的Registry是HTTP服务,且你之前的配置遗漏了端口信息,导致Docker仍会强制用HTTPS请求。按以下步骤修复:
- 编辑Docker守护进程配置文件,必须包含Registry的端口32000:
sudo tee /etc/docker/daemon.json <<EOF {"insecure-registries": ["dirIPoftheVM:32000"]} EOF
- 重启Docker服务使配置生效:
sudo systemctl restart docker
- 重新拉取并运行镜像:
docker pull dirIPoftheVM:32000/vnf-image:registry docker run dirIPoftheVM:32000/vnf-image:registry
可选验证步骤
如果问题仍存在,先在第二台虚拟机测试Registry连通性:
curl http://dirIPoftheVM:32000/v2/
返回{}说明Registry服务正常,此时再执行Docker命令即可。
内容的提问来源于stack exchange,提问作者Aitor Encinas
相关产品推荐
相关产品推荐

