Docker映像没有被部署(保持终止)在本地kubernetes

最近开始在Docker和kubernetes上工作。 我遇到了一个我实际上并没有完全理解的问题。

事情是当我执行我的svc.yaml(服务)和rc.yaml(复制控制器)豆荚创建,但其状态终止。

我尝试使用该命令检查可能的失败原因

docker ps -a

954c3ee817f9 localhost:5000 / HelloService
“/ bin / sh -c ./startSe”2分钟前已退出(127)2分钟前
k8s_HelloService.523e3b04_HelloService-64789_default_40e92b63-707a-11e7-9b96-080027f96241_195f2fee

然后尝试运行docker run -i -t localhost:5000/HelloService

/ bin / sh:./startService.sh:找不到

我得到这些错误的可能原因是什么?

Docker文件:

 FROM alpine:3.2 VOLUME /tmp ADD HelloService-0.0.1-SNAPSHOT.jar app.jar VOLUME /etc ADD /etc/ /etc/ ADD startService.sh /startService.sh RUN chmod 700 /startService.sh ENTRYPOINT ./startService.sh 

startService.sh

 #!/bin/sh touch /app.jar java -Djava.security.egd=file:/dev/./urandom -Xms256m -Xmx256m -jar /app.jar 

另外我想知道是否有任何具体的方式,我可以从kubernetes访问日志为终止豆荚?

更新:在运行下面的命令

 kubectl describe pods HelloService-522qw 

24s 24s 1 {default-scheduler}正常预定成功
分配的HelloService-522qw到ssantosh.centos7 17s 17s 1 {kubelet ssantosh.centos7} spec.containers {HelloService}正常创建容器与码头ID b550557f4c17; 安全性:[=的Seccomp潜水]
17s 17s 1 {kubelet
ssantosh.centos7} spec.containers {HelloService}正常启动使用docker id的容器b550557f4c17 18s 16s 2 {kubelet
ssantosh.centos7} spec.containers {HelloService}正常拉图像“localhost:5000 / HelloService”18s 16s 2 {kubelet
ssantosh.centos7} spec.containers {HelloService}正常拉动成功拉出图像“localhost:5000 / HelloService”15s 15s 1 {kubelet
ssantosh.centos7} spec.containers {HelloService}普通创建容器与码头ID d30b10211b1b; 安全性:[=的Seccomp潜水]
14s 14s 1 {kubelet
ssantosh.centos7} spec.containers {HelloService}正常启动使用docker id的容器d30b10211b1b 12s 11s 2 {kubelet
ssantosh.centos7} spec.containers {HelloService}警告BackOff退步重新启动失败的Docker容器12s 11s 2 {kubelet
ssantosh.centos7}警告FailedSync错误同步pod,跳过:用“CrashLoopBackOff”为“HelloService”失败的“StartContainer”:
“回退10s重启失败的容器= HelloService
荚= HelloService的-522qw_default(1e951b45-7116-11e7-9b96-080027f96241)”

问题是没有Java作为高山形象的一部分。

所以修改了

 FROM alpine:3.2 

 FROM anapsix/alpine-java 

你需要在机器上的jdk也需要更新Dockerfile,删除。 startService.sh命令的前面。 如下所示

 ENTRYPOINT /startService.sh 

这将解决这个错误信息。

/ bin / sh:./startService.sh:找不到