当我将任何命令添加到deployment.yaml中时,我的吊舱将转到CrashLoopBackOff,如果我删除这些命令,它将正常运行。 kubectl日志显示我“你好”,但是http似乎没有启动。
spec:
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
env:
{{- range $pkey, $pval := .Values.env }}
- name: {{ $pkey }}
value: {{ quote $pval }}
{{- end }}
**command: ["echo hello"]**
ports:
- containerPort: {{ .Values.service.internalPort }}
livenessProbe:
httpGet:
path: {{ .Values.probePath }}
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
successThreshold: {{ .Values.livenessProbe.successThreshold }}
timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
readinessProbe:
httpGet:
path: {{ .Values.probePath }}
port: {{ .Values.service.internalPort }}
periodSeconds: {{ .Values.readinessProbe.periodSeconds }}
successThreshold: {{ .Values.readinessProbe.successThreshold }}
timeoutSeconds: {{ .Values.readinessProbe.timeoutSeconds }}
resources:
{{ toYaml .Values.resources | indent 12 }}
terminationGracePeriodSeconds: {{ .Values.terminationGracePeriodSeconds }}
{{- end }}
有人可以帮助我吗? 谢谢
答案 0 :(得分:1)
Docker容器一旦退出运行,就会被杀死。在您的情况下,Pod启动了一个容器,但是在echo hello之后没有任何事可做,因此该容器将以成功代码终止。但是kubernetes默认会尝试再次启动它,因此它会生成另一个容器,但又会退出,并且这是循环发生的,因此您会得到CrashLoopBackOff