我的 initContainers 的"alpine"映像存在问题



人,我正在尝试用initContainers创建一个简单的文件/tmp/tarte.test。我有一个约束,使用高山图像作为容器。请让我知道这个简单的yaml文件中没有什么。

apiVersion: v1
kind: Pod
metadata:
name: initonpod
namespace: prod
labels:
app: myapp
spec:
containers:
- name: mycont-nginx
image: alpine
initContainers:
- name: myinit-cont
image: alpine
imagePullPolicy: IfNotPresent
command: 
- touch
- "/tmp/tarte.test"
- sleep 200

吊舱的描述

Events:
Type     Reason     Age              From                 Message
----     ------     ----             ----                 -------
Normal   Scheduled  9s               default-scheduler    Successfully assigned prod/initonpod to k8s-node-1
Normal   Pulled     8s               kubelet, k8s-node-1  Container image "alpine" already present on machine
Normal   Created    8s               kubelet, k8s-node-1  Created container
Normal   Started    7s               kubelet, k8s-node-1  Started container
Normal   Pulling    4s (x2 over 7s)  kubelet, k8s-node-1  pulling image "alpine"
Normal   Pulled     1s (x2 over 6s)  kubelet, k8s-node-1  Successfully pulled image "alpine"
Normal   Created    1s (x2 over 5s)  kubelet, k8s-node-1  Created container
Normal   Started    1s (x2 over 5s)  kubelet, k8s-node-1  Started container
Warning  BackOff    0s               kubelet, k8s-node-1  Back-off restarting failed container

如果我更改nginx图像容器的alpine图像。。。工作不错。

Back-off restarting failed container,因为您的容器规格。

spec:
containers:
- name: mycont-nginx
image: alpine

alpine容器不会永远运行。在kubernetes中,容器必须永远运行。这就是你犯错的原因。当您使用nginx图像时,它将永远运行。因此,要使用alpine图像,请更改规格如下:

apiVersion: v1
kind: Pod
metadata:
name: busypod
labels:
app: busypod
spec:
containers:
- name: busybox
image: alpine
command:
- "sh"
- "-c"
- >
while true; do
sleep 3600;
done
initContainers:
- name: myinit-cont
image: alpine
imagePullPolicy: IfNotPresent
command:
- touch
- "/tmp/tarte.test"
- sleep 200

最新更新