繁体   English   中英

错误:无法访问 jarfile (Kubernetes)

[英]Error: Unable to access jarfile (Kubernetes)

kubectl get pods -n abc
NAME                       READY         STATUS      RESTARTS   AGE
abc-v2-78b59ccc4f-85xgr   0/1     CrashLoopBackOff   27         129m

面临以下错误:

> ➜  ~ kubectl logs -f abc-v2-78b59ccc4f-85xgr -n 
Error: Unable to access jarfile abc.jar

我假设 jar 不存在或缺少所需的访问权限。 请在这里指导我,如何进行。

编辑 1:正如@howard-roark 所建议的,Jar 在容器内可用,得到相同的错误消息。

编辑 2:在 java 命令中使用 .jar 现在检查结果

编辑 4:理想情况下应该只有一个处于运行状态的实例。

Kubernetes 是一个容器编排器。 它将您的图像作为容器运行。 您显示的错误看起来像是应用程序错误,而不是 Kubernetes 错误。 我处理这个问题的方法是:

  1. 检查您的应用程序调用的 jar 文件是否在您的映像中。 您可以通过运行您的图像并在其中执行以查看您的应用程序运行的 jar 文件是否在那里来在本地执行此操作。
docker run -it <image> /bin/bash

或者您可以通过 Kubernetes 执行类似的命令来执行到您的 pod:

kubectl run -i --tty testjavacontainer --image=<image> -- /bin/bash
  1. 如果它在那里,那么我会确认它的路径并确保我的 java 命令正确引用了该路径。 如果它不存在,那么我会调整我的 Dockerfile 以确保它在我的 java 命令期望的路径上。

简而言之,我会将其视为标准的 java 错误,其细微差别恰好是在容器中运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM