google 容器引擎在从容器注册表中拉取镜像时遇到问题
google container engine having problems pulling image from container registry
我正在尝试在 GKE (运行 1.6.0) 上创建部署,如下所示:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: my-api
spec:
replicas: 1
template:
metadata:
labels:
app: api
spec:
containers:
- name: api
image: eu.gcr.io/<PROJECT>/<IMAGE>:latest
imagePullPolicy: Always
ports:
- containerPort: 3000
env:
- name: NODE_ENV
value: production
resources:
requests:
cpu: 100m
创建失败并显示以下错误消息:
Failed to pull image "eu.gcr.io/<PROJECT>/<IMAGE>:latest": rpc error: code = 2 desc = failed to register layer: rename /var/lib/docker/image/overlay/layerdb/tmp/layer-629814250 /var/lib/docker/image/overlay/layerdb/sha256/bd2793152ee77e9d503e981352ff16122b220968ce9df1cc3b49b9704d7dfe28: directory not empty
Error syncing pod, skipping: failed to "StartContainer" for "api" with ErrImagePull: "rpc error: code = 2 desc = failed to register layer: rename /var/lib/docker/image/overlay/layerdb/tmp/layer-629814250 /var/lib/docker/image/overlay/layerdb/sha256/bd2793152ee77e9d503e981352ff16122b220968ce9df1cc3b49b9704d7dfe28: directory not empty"
其他看起来几乎相同但使用不同图像的部署正在按预期工作。我要拉的图像有什么问题?我怎样才能 debug/fix 这个?
这可能是由于 known docker bug where shutdown occurs before the content is synced to disk on layer creation. The fix 包含在 docker v1.13 中。
一个临时解决方法sugguested是删除目录中的空文件,然后重新拉取镜像。
我正在尝试在 GKE (运行 1.6.0) 上创建部署,如下所示:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: my-api
spec:
replicas: 1
template:
metadata:
labels:
app: api
spec:
containers:
- name: api
image: eu.gcr.io/<PROJECT>/<IMAGE>:latest
imagePullPolicy: Always
ports:
- containerPort: 3000
env:
- name: NODE_ENV
value: production
resources:
requests:
cpu: 100m
创建失败并显示以下错误消息:
Failed to pull image "eu.gcr.io/<PROJECT>/<IMAGE>:latest": rpc error: code = 2 desc = failed to register layer: rename /var/lib/docker/image/overlay/layerdb/tmp/layer-629814250 /var/lib/docker/image/overlay/layerdb/sha256/bd2793152ee77e9d503e981352ff16122b220968ce9df1cc3b49b9704d7dfe28: directory not empty
Error syncing pod, skipping: failed to "StartContainer" for "api" with ErrImagePull: "rpc error: code = 2 desc = failed to register layer: rename /var/lib/docker/image/overlay/layerdb/tmp/layer-629814250 /var/lib/docker/image/overlay/layerdb/sha256/bd2793152ee77e9d503e981352ff16122b220968ce9df1cc3b49b9704d7dfe28: directory not empty"
其他看起来几乎相同但使用不同图像的部署正在按预期工作。我要拉的图像有什么问题?我怎样才能 debug/fix 这个?
这可能是由于 known docker bug where shutdown occurs before the content is synced to disk on layer creation. The fix 包含在 docker v1.13 中。
一个临时解决方法sugguested是删除目录中的空文件,然后重新拉取镜像。