突然之间,我无法部署一些以前可以部署的映像。我得到了以下豆荚状态:

[root@webdev2 origin]# oc get pods 
NAME                      READY     STATUS             RESTARTS   AGE 
arix-3-yjq9w              0/1       ImagePullBackOff   0          10m 
docker-registry-2-vqstm   1/1       Running            0          2d 
router-1-kvjxq            1/1       Running            0          2d 

应用程序就是无法启动。吊舱并没有试图运行容器。从事件页面,我已经退下拉图像“172.30.84.25:5000/default/arix@sha256:d326。我已经验证了我可以用docker pull的标签拉图像。

我也查了上一个集装箱的日志。因为某种原因,它被关闭了。我觉得太空舱至少应该试着重启一下。

我已经没有办法解决这个问题了。我还可以检查什么?


当前回答

我也遇到过类似的问题,但我的所有pod都没有准备好,显示ready状态0/1

喜欢的东西:

我尝试了很多东西,但最后我发现上下文设置不正确。

请使用以下命令,并确保在正确的上下文中:

kubectl config get-contexts

其他回答

在GKE上,如果pod已死,最好检查事件。 它将更详细地显示错误是关于什么的。

就我而言,我有:

Failed to pull image "gcr.io/project/imagename@sha256:c8e91af54fc17faa1c49e2a05def5cbabf8f0a67fc558eb6cbca138061a8400a":
 rpc error: code = Unknown desc = error pulling image configuration: unknown blob

结果照片不知怎么被损坏了。在重新推它并使用新的散列部署它之后,它又可以工作了。

回顾一下,我认为图像被损坏了,因为在GCP中托管图像的桶设置了一个清理策略,基本上删除了图像。因此,可以在事件中看到上述消息。

其他常见的问题是错误的名称(gcr。IO vs . eu.gcr.io),也可能是无法到达注册表。再次强调,提示存在于事件中,那里的信息应该告诉你足够的信息。

更多的一般信息可以在这里找到(比如身份验证):

推拉图像

Ubuntu实验室 转到您的工作节点,然后编辑以下文件

Sudo vi /etc/resolv.conf

命名服务器8.8.8.8 做出这个改变并保存它,它将为实验室工作

我忘记把标记为1.0.8的图像推到ECR (AWS图像中心)… 如果你正在使用头盔并升级:

Helm upgrade minta-user ./src/services/user/ Helm -chart

确保图像标签内的文件值。yaml被推送(到ECR或Docker Hub等)。例如(这是我的*helm-chart/values.yaml):

replicaCount: 1

image:
   repository:dkr.ecr.us-east-1.amazonaws.com/minta-user
   tag: 1.0.8

您需要确保推送了image:1.0.8 !

步骤:

运行docker login。 将映像推到Docker Hub 重新创建豆荚

这为我解决了问题。

我也遇到过类似的情况,结果是随着Docker Desktop的实现,我被签了出去。我重新登录后,一切都恢复正常了。