当前位置: 首页 > 知识库问答 >
问题:

K8s MiniKube无法从docker读取图像,导致I/O错误

淳于开畅
2023-03-14

我的docker已经有了我在Job.Yaml中使用的图像,但minikube失败了

Events:
  Type     Reason     Age   From               Message
  ----     ------     ----  ----               -------
  Normal   Scheduled  28s   default-scheduler  Successfully assigned default/say-something-blbwp to minikube
  Normal   Pulling    27s   kubelet, minikube  Pulling image "java"
  Warning  Failed     17s   kubelet, minikube  Failed to pull image "java": rpc error: code = Unknown desc = Error response from daemon: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on 192.168.67.65:53: read udp 192.168.67.70:58499->192.168.67.65:53: i/o timeout
  Warning  Failed     17s   kubelet, minikube  Error: ErrImagePull
  Normal   BackOff    17s   kubelet, minikube  Back-off pulling image "java"
  Warning  Failed     17s   kubelet, minikube  Error: ImagePullBackOff

这是我的job.yaml文件

apiVersion: batch/v1
kind: Job
metadata:
 name: say-something
spec:
 template:
   metadata:
     name: say-something
   spec:
     containers:
     - name: say-something
       image: java
       imagePullPolicy: IfNotPresent
       command: [System.out.println("ZXZAA:")]
     restartPolicy: OnFailure

docker图像

REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE
hello-world                 latest              bf756fb1ae65      7 months ago        13.3kB
java                        latest              d23bdf5b1b1b        3 years ago         643MB

谁能指导一下我缺少什么吗?任何特定的设置我需要做的注册表部分?

共有1个答案

罗烨霖
2023-03-14

为了解决kubelet,minikube错误:ImagePullBackOff我更改了docker设置,创建了docker ID

重新启动docker desktop并使用资源->网络->DNS服务器->手动DNS配置为8.8.8.8,并从主机文件中删除过时的Ips,如https://github.com/docker/for-win/issues/4884#中所述,之后它工作正常,能够拉出图像

@David Maze是对的,我们需要有用于java的openjdk,我们需要将我们的应用程序部署为图像。

 类似资料:
  • 我正在建立一个java项目,使用pdfBox从PDF中获取图像。由于我使用tika应用程序实现其他功能,我决定使用tika-app-1.20中的pdfBox。罐子 我以前尝试过包括jai-imageio-core-1.3.1.jar,因为Tika-app已经与这个罐子捆绑在一起了。我单独尝试了tika-app jar。 这条线是投掷错误

  • 我正在尝试从管道(如stdin,named pipe等)加载图像。 这是我的示例代码: #包括“opencv2/opencv.hpp” 使用名称空间CV; int main(int argc,char**argv){ } 会有用的,但是 而且 不能工作,并且Mat img的行和列为0。 真正的文件和管道有什么区别?

  • 我在AWS上使用Kubernetes来运行一个Play+Akka流服务器。 执行时 我的吊舱进入“ImagePullBackoff”状态。 以下是事件列表: 但是,映像存在于存储库中--执行: 在我的机器上工作。 现在,这个节点上还有其他的豆荚在运行。

  • 我在维护java为我读取文件时遇到问题。我有一本书。包含所有丹麦岛屿的txt文件,但不管我如何尝试,它都不会显示在控制台中。 这是带有main方法的类。从这里它读取文件并拆分行以将数据放入ArrayList中。 当行被拆分后,它将通过另一个类,该类将数据转换为字符串,并将其放入另一个Arraylist,该Arraylist将在控制台中打印。 我不会得到任何错误或异常,程序会一直运行,直到它认为列表

  • 在我的main(一个名为VehicleDriverClass的seperate类)中,我试图使用I/O将车辆数据写入文件,并从文件中读取车辆数据。我可以写一个文件罚款。我正在使用记事本和一个。txt文件来读取。我遇到的问题是,当从文件中读取时,如何终止一行的结尾。这里是Vehicle类的构造函数,所以您知道Paramaters。 这就是我目前的输入法(不试图创建oject,只是从文件中读取)。传递

  • 问题内容: 我已经编写了一个程序来加密Netbeans中的图像。从Netbeans运行时,该程序运行良好,但是当我将其构建为.jar文件时,即使我将图像文件与.jar文件放在同一文件夹中,它也无法读取图像。 //加密 //加载/写入图片 问题答案: 目前尚不清楚以下哪个触发您的错误。这个 将从当前目录读取,该目录不一定与您的jar文件所在的目录相同。 这个 将从类所在的jar文件中的目录中读取。请