kubernetes: No such image: gcr.io/google_containers/redis
I run followed “https://github.com/GoogleCloudPlatform/kubernetes/blob/master/examples/guestbook/README.md”
but after I run “kubectl create -f examples/guestbook/redis-master-controller.json”
redis-master-controller-e0zho redis-master gcr.io/google_containers/redis fed-node/ app=redis,name=redis-master Pending 6 minutes
it is always pending ,and I checked the log on the node ,here are the errors,what did I miss when I build the example?thanks
Apr 16 10:35:41 fedora docker: time=“2015-04-16T10:35:41+08:00” level=“info” msg=“+job image_inspect(gcr.io/google_containers/redis)”
Apr 16 10:35:41 fedora docker: No such image: gcr.io/google_containers/redis
Apr 16 10:35:41 fedora docker: time=“2015-04-16T10:35:41+08:00” level=“info” msg=“-job image_inspect(gcr.io/google_containers/redis) = ERR (1)”
Apr 16 10:35:41 fedora docker: time=“2015-04-16T10:35:41+08:00” level=“error” msg=“Handler for GET /images/{name:.*}/json returned error: No such image: gcr.io/google_containers/redis”
Apr 16 10:35:41 fedora docker: time=“2015-04-16T10:35:41+08:00” level=“error” msg=“HTTP Error: statusCode=404 No such image: gcr.io/google_containers/redis”
Apr 16 10:35:41 fedora kubelet: E0416 10:35:41.606815 7380 kubelet.go:1990] Cannot get host IP: Host IP unknown; known addresses: []
Apr 16 10:35:41 fedora kubelet: E0416 10:35:41.606867 7380 pod_workers.go:103] Error syncing pod cc1f1c78-e3e0-11e4-b8f6-fa163ebba90c, skipping: image pull failed for gcr.io/google_containers/pause:0.8.0, this may be because there are no credentials on this request. details: (API error (500): Invalid registry endpoint https://gcr.io/v1/: Get https://gcr.io/v1/_ping: dial tcp 74.125.203.82:443: i/o timeout. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add --insecure-registry gcr.io
to the daemon’s arguments. In the case of HTTPS, if you have access to the registry’s CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/gcr.io/ca.crt
Apr 16 10:35:41 fedora kubelet: )
Apr 16 10:35:41 fedora kubelet: I0416 10:35:41.606966 7380 event.go:200] Event(api.ObjectReference{Kind:“Pod”, Namespace:“default”, Name:“redis-master-controller-e0zho”, UID:“cc1f1c78-e3e0-11e4-b8f6-fa163ebba90c”, APIVersion:“v1beta3”, ResourceVersion:“13546”, FieldPath:“implicitly required container POD”}): reason: ‘failed’ Failed to pull image “gcr.io/google_containers/pause:0.8.0”: image pull failed for gcr.io/google_containers/pause:0.8.0, this may be because there are no credentials on this request. details: (API error (500): Invalid registry endpoint https://gcr.io/v1/: Get https://gcr.io/v1/_ping: dial tcp 74.125.203.82:443: i/o timeout. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add --insecure-registry gcr.io
to the daemon’s arguments. In the case of HTTPS, if you have access to the registry’s CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/gcr.io/ca.crt
Apr 16 10:35:41 fedora kubelet: )
About this issue
- Original URL
- State: closed
- Created 9 years ago
- Comments: 34 (10 by maintainers)
Moving to docker hub is much helpful. Please do it 😭
start the kubelet like below will solve the issue that when you cannot connect to google, but can connect to docker.io: kubelet --pod-infra-container-image=“docker.io/kubernetes/pause”
gcr.io is unaccessable in China, please fix that use mirrrors
+1 please move to docker.io
WORKAROUND (unofficial SOLUTION)
(when you cannot connect to google, but you can connect to docker.io)
docker pull docker.io/kubernetes/pause
docker tag kubernetes/pause gcr.io/google_containers/pause:0.8.0
docker tag gcr.io/google_containers/pause:0.8.0 gcr.io/google_containers/pause
Tested and working for me.
please move to docker hub… Especially in intranets, people get: 2700 event.go:203] Event(api.ObjectReference{Kind:“Pod”, Namespace:“demo11”, Name:“webserver-controller-ychel”, UID:“d310777e-2958-11e5-be96-4437e6a56f8a”, APIVersion:“v1beta3”, ResourceVersion:“274474”, FieldPath:“”}): reason: ‘failedSync’ Error syncing pod, skipping: image pull failed for gcr.io/google_containers/pause:0.8.0, this may be because there are no credentials on this request. details: (Error pulling image (0.8.0) from gcr.io/google_containers/pause, Get https://storage.googleapis.com/artifacts.google-containers.appspot.com/containers/images/2c40b0526b6358710fd09e7b8c022429268cc61703b4777e528ac9d469a07ca1/ancestry: Forbidden)
Any work-around (besides moving the box to another network)?
When I run
ping gcr.io
on my desktop (non-kubernetes-node) machine, I get a response. If you don’t then you would need to figure out why – I doubt I could help with that. If you can ping it from your desktop, but not from the kubernetes node, then I may be able to help debug.