我正在尝试使用Kubernetes在Dockerfile下运行图像
FROM centos:6.9
COPY rpms/* /tmp/
RUN yum -y localinstall /tmp/*
ENTERYPOINT service test start && /bin/bash
现在,当我尝试使用pod.yml
部署此图片时,如下所示,
apiVersion: v1
kind: Pod
metadata:
labels:
app: testpod
name: testpod
spec:
containers:
- image: test:v0.2
name: test
imagePullPolicy: Always
volumeMounts:
- mountPath: /data
name: testpod
volumes:
- name: testod
persistentVolumeClaim:
claimName: testpod
现在,当我尝试创建pod时,图像进入了crashloopbackoff。所以我如何让图像在Kubernetes上的/ bin / bash中等待,就像我使用docker run -d test:v0.2
时一样,它会罚款并继续运行。
答案 0 :(得分:0)
您需要将终端连接到正在运行的容器。使用kubectl run ...
启动广告连播时,您可以使用-i --tty
来执行此操作。在pod yml filke中,您可以将以下内容添加到容器规范中以附加tty。
stdin: true
tty: true
答案 1 :(得分:0)
您可以输入tail -f /dev/null
之类的命令来保持容器始终 ,这可以在Dockerfile
或Kubernetes yaml
文件中完成。