2

我有一个部署在 kubernetes 上的不和谐机器人。它内置在一个 docker 映像中,然后我将其部署到 k8s。

Dockerfile

    FROM python:3.7

    WORKDIR /app
    COPY . /app

    RUN pip install -r requirements.txt

    ENV PYTHONUNBUFFERED=0
    CMD ["python", "-u", "main.py"]

deployment.yml

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: pythonapp
  labels:
    app: pythonapp
spec:
  replicas: 1
  selector:
    matchLabels:
      app: pythonapp
  template:
    metadata:
      labels:
        app: pythonapp
    spec:
      containers:
        - name: pythonapp
          image: registry.example.com/pythonapp:latest
          imagePullPolicy: Always
          env:
            - name: PYTHONUNBUFFERED
              value: "0"

当我部署它时,程序运行良好。但是当我去检查 pod 的日志时,它会显示The selected container has not logged any messages yet..

如何将我print()在 python 中的任何内容记录到 kubernetes pod?

4

1 回答 1

2

PYTHONUNBUFFERED1如果您想立即显示日志消息而不首先被缓冲,则必须设置为。

于 2019-11-14T11:21:37.393 回答