使用gcr.io中的图像运行pod时出错

时间:2015-10-02 23:53:12

标签: kubernetes google-kubernetes-engine google-container-registry

我使用以下命令成功pushed my Docker container image to gcr.io

$ gcloud docker push gcr.io/project-id-123456/my-image

但是当我尝试create a new pod时,我收到以下错误:

$ kubectl run my-image --image=gcr.io/project-id-123456/my-image
CONTROLLER  CONTAINER(S)  IMAGE(S)                           SELECTOR      REPLICAS
my-image    my-image      gcr.io/project-id-123456/my-image  run=my-image  1

$ kubectl get pods
NAME            READY  STATUS                                                                                                   RESTARTS   AGE
my-image-of9x7  0/1    Error pulling image (latest) from gcr.io/project-id-123456/my-image, Untar exit status 1 unexpected EOF  0          5m

它也没有吸引我的当地人:

$ docker rmi -f $(docker images -q) # Clear local image cache
$ gcloud docker pull gcr.io/project-id-123456/my-image:latest
…
Error pulling image (latest) from gcr.io/project-id-123456/my-image, Untar re-exec error: exit status 1: output: unexpected EOF

有人可以建议我如何解决这个问题吗?

1 个答案:

答案 0 :(得分:4)

好的,在挖掘Docker代码库后,我想我已经找到了一些类似的报告。

显示此错误的方式在1.7中已更改,但此线程似乎相关:    https://github.com/docker/docker/issues/14792

这让我陷入了这个修复,它落在了1.8:    https://github.com/docker/docker/pull/15040

特别是,请参阅此评论:    https://github.com/docker/docker/pull/15040#issuecomment-125661037

该评论似乎表明这只是v1层的一个问题,因此我们对v2的Beta支持可能会解决此问题。

您可以通过以下方式推送到我们的v2测试版: gcloud docker --server=beta.gcr.io push beta.gcr.io/project-id-123456/...

然后,您可以简单地将Pod中的引用更改为“beta.gcr.io / ...”,它将通过v2拉出。