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)

Most upvoted comments

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.