尝试使用 helm/docker 查找本地图片时出错
Getting an error when trying to find a local image with helm/docker
我有一个本地 kubernetes 集群 (minikube),它正在尝试从我的本地 Docker 存储库加载图像。
当我执行“docker 张图片”时,我得到:
cluster.local/container-images/app-shiny-app-validation-app-converter 1.6.9
cluster.local/container-images/app-shiny-app-validation 1.6.9
鉴于我知道上面的图像在那里,我 运行 一些使用这些图像的 helm 命令,但我得到以下错误:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal BackOff 66s (x2 over 2m12s) kubelet Back-off pulling image "cluster.local/container-images/app-shiny-app-validation-app-converter:1.6.9"
Warning Failed 66s (x2 over 2m12s) kubelet Error: ImagePullBackOff
Normal Pulling 51s (x3 over 3m24s) kubelet Pulling image "cluster.local/container-images/app-shiny-app-validation-app-converter:1.6.9"
Warning Failed 11s (x3 over 2m13s) kubelet Failed to pull image "cluster.local/container-images/app-shiny-app-validation-app-converter:1.6.9": rpc error: code = Unknown desc = Error response from daemon: Get https://cluster.local/v2/: dial tcp: lookup cluster.local: Temporary failure in name resolution
Warning Failed 11s (x3 over 2m13s) kubelet Error: ErrImagePull
有人知道我该如何解决这个问题吗?似乎最大的问题是Get https://cluster.local/v2/: dial tcp: lookup cluster.local: Temporary failure in name resolution
- 将
cluster.local
添加到您所有 kubernetes 节点中的 /etc/hosts
文件。
192.168.12.34 cluster.local
- 检查您是否可以使用
docker login cluster.local
登录注册表
- 如果您的注册表有自签名证书,请将
cluster.local.crt
密钥复制到所有 kubernetes 工作节点 /etc/docker/certs.d/cluster.local/ca.crt
由于使用的是minikube,可以参考他们的文档。
建议如果使用imagePullPolicy
,需要设置为Never
。如果设置为 Always
,它将尝试伸出并从网络中拉出。
来自文档:https://minikube.sigs.k8s.io/docs/handbook/pushing/
“提示 1:请记住在您的 yaml 文件中关闭 imagePullPolicy:Always(使用 imagePullPolicy:IfNotPresent 或 imagePullPolicy:Never)。否则 Kubernetes 将不会使用您的本地构建映像,它会从网络中拉取."
我有一个本地 kubernetes 集群 (minikube),它正在尝试从我的本地 Docker 存储库加载图像。
当我执行“docker 张图片”时,我得到:
cluster.local/container-images/app-shiny-app-validation-app-converter 1.6.9
cluster.local/container-images/app-shiny-app-validation 1.6.9
鉴于我知道上面的图像在那里,我 运行 一些使用这些图像的 helm 命令,但我得到以下错误:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal BackOff 66s (x2 over 2m12s) kubelet Back-off pulling image "cluster.local/container-images/app-shiny-app-validation-app-converter:1.6.9"
Warning Failed 66s (x2 over 2m12s) kubelet Error: ImagePullBackOff
Normal Pulling 51s (x3 over 3m24s) kubelet Pulling image "cluster.local/container-images/app-shiny-app-validation-app-converter:1.6.9"
Warning Failed 11s (x3 over 2m13s) kubelet Failed to pull image "cluster.local/container-images/app-shiny-app-validation-app-converter:1.6.9": rpc error: code = Unknown desc = Error response from daemon: Get https://cluster.local/v2/: dial tcp: lookup cluster.local: Temporary failure in name resolution
Warning Failed 11s (x3 over 2m13s) kubelet Error: ErrImagePull
有人知道我该如何解决这个问题吗?似乎最大的问题是Get https://cluster.local/v2/: dial tcp: lookup cluster.local: Temporary failure in name resolution
- 将
cluster.local
添加到您所有 kubernetes 节点中的/etc/hosts
文件。
192.168.12.34 cluster.local
- 检查您是否可以使用
docker login cluster.local
登录注册表
- 如果您的注册表有自签名证书,请将
cluster.local.crt
密钥复制到所有 kubernetes 工作节点/etc/docker/certs.d/cluster.local/ca.crt
由于使用的是minikube,可以参考他们的文档。
建议如果使用imagePullPolicy
,需要设置为Never
。如果设置为 Always
,它将尝试伸出并从网络中拉出。
来自文档:https://minikube.sigs.k8s.io/docs/handbook/pushing/ “提示 1:请记住在您的 yaml 文件中关闭 imagePullPolicy:Always(使用 imagePullPolicy:IfNotPresent 或 imagePullPolicy:Never)。否则 Kubernetes 将不会使用您的本地构建映像,它会从网络中拉取."