我正在開發一個將使用列印陳述句的簡單 python 3 應用程式。當我執行 kubectl log 命令時,查看日志對我來說至關重要。但是,日志永遠不會存在。看起來應用程式可能沒有在 pod 中運行。當我執行 kubectl --it exexc 并進入 pod 時,我會進入作業目錄,然后當我手動執行 python myApp.py 時,它正在列印日志。
我的 Dockerfile 看起來像這樣:
FROM python:3.8-slim-buster
ENV PYTHONUNBUFFERED=0
WORKDIR /code
COPY . .
CMD [ "python", "/.main.py" ]
對于一個簡單的例子,我可以使用一段代碼來列印:
from time import sleep
while True:
print("Im printing ...")
sleep(10)
我的 pod 定義如下所示:
apiVersion: v1
kind: Pod
metadata:
name: logbox
namespace: default
spec:
containers:
- name: logbox
image: <8888888888888888>logbox:0.0.1
imagePullPolicy: "IfNotPresent"
stdin: true
args:
- sh
- -c
- sleep infinity
uj5u.com熱心網友回復:
可能是argspod 定義中的CMD命令覆寫了 Dockerfile命令,我會嘗試在沒有定義 args 的情況下或通過匹配它們(因此 args 呼叫python ./main.py
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/328531.html
標籤:Python 蟒蛇-3.x 码头工人 Kubernetes
