[英]Kubectl throws ImagePullBackOff Error while creating deployment via minikube
Trying to create a deployment from an image尝试从映像创建部署
kubectl create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.10
and then do kubectl get pods
and check the logs of hello-minikube pod using然后使用
kubectl get pods
并检查 hello-minikube pod 的日志
kubectl pod describe <pod-name>
throws following error kubectl pod describe <pod-name>
抛出以下错误
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled <unknown> default-scheduler Successfully assigned default/hello-minikube-797f975945-dmq26 to minikube
Warning Failed 42s kubelet, minikube Failed to pull image "k8s.gcr.io/echoserver:1.10": rpc error: code = Unknown desc = Error response from daemon: Get https://k8s.gcr.io/v2/: dial tcp: lookup k8s.gcr.io on 192.168.64.1:53: read udp 192.168.64.3:56747->192.168.64.1:53: read: connection refused
Warning Failed 27s kubelet, minikube Failed to pull image "k8s.gcr.io/echoserver:1.10": rpc error: code = Unknown desc = Error response from daemon: Get https://k8s.gcr.io/v2/: dial tcp: lookup k8s.gcr.io on 192.168.64.1:53: read udp 192.168.64.3:48279->192.168.64.1:53: read: connection refused
Normal BackOff 16s (x2 over 42s) kubelet, minikube Back-off pulling image "k8s.gcr.io/echoserver:1.10"
Warning Failed 16s (x2 over 42s) kubelet, minikube Error: ImagePullBackOff
Normal Pulling 4s (x3 over 42s) kubelet, minikube Pulling image "k8s.gcr.io/echoserver:1.10"
Warning Failed 4s (x3 over 42s) kubelet, minikube Error: ErrImagePull
Warning Failed 4s kubelet, minikube Failed to pull image "k8s.gcr.io/echoserver:1.10": rpc error: code = Unknown desc = Error response from daemon: Get https://k8s.gcr.io/v2/: dial tcp: lookup k8s.gcr.io on 192.168.64.1:53: read udp 192.168.64.3:50616->192.168.64.1:53: read: connection refused
This error can be solved using :可以使用以下方法解决此错误:
Check whether any docker machine is running or not by docker-machine ls
通过
docker-machine ls
检查是否有任何 docker 机器正在运行
If no machine exist, then create one using docker-machine create <machine-name>
如果不存在机器,则使用
docker-machine create <machine-name>
创建一docker-machine create <machine-name>
Then get this machine IP using docker-machine ip <machine-name>
然后使用
docker-machine ip <machine-name>
获取这台机器IP
Then first delete any existing minikube cluster using minikube delete
and start again using minikube start --vm-driver="virtualbox" --insecure-registry="docker-machine IP":80
然后首先使用
minikube delete
删除任何现有的 minikube 集群,然后使用minikube start --vm-driver="virtualbox" --insecure-registry="docker-machine IP":80
Then run kubectl create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.10
and check the logs, it will show image pulled successfully.然后运行
kubectl create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.10
并检查日志,它会显示成功拉取图像。
From the events it looks like the call to a DNS server at 192.168.64.1:53
to resolve k8s.gcr.io is failing.从事件来看,调用
192.168.64.1:53
的 DNS 服务器来解析 k8s.gcr.io 似乎失败了。 Check if there's a DNS server running at that IP.检查是否有在该 IP 上运行的 DNS 服务器。 It may be configured in
/etc/resolv.conf
(if Linux) on the minikube host.它可以在 minikube 主机上的
/etc/resolv.conf
(如果是 Linux)中配置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.