首页 > 解决方案 > Kubernetes部署yaml中的多个命令

问题描述

我的 Dockerfile 的 CMD 和 ENTRYPOINT 被 deployment.yaml 的命令和 arg 覆盖。

DockerFile 片段 -

ENTRYPOINT ["python3"]

CMD ["-m", "swagger_server"]

deployment.yaml 片段 -

command: ["/bin/sh"]
args: ["-c", "while true; do python3 -m swagger_server; echo Done Deploying sv-premier; sleep 3600;done"]

但它没有执行。还以此为由尝试了多种组合。

部署文件——

apiVersion: apps/v1
kind: Deployment
metadata:
  name: sv-premier
spec:
  selector:
    matchLabels:
      app: sv-premier
  template:
    metadata:
      labels:
        app: sv-premier
    spec:
      volumes:
      - name: google-cloud-key
        secret:
          secretName: gcp-key
      containers:
      - name: sv-premierleague
        image: gcr.io/proto/premiercore1:latest
        tty: true
        imagePullPolicy: Always
        command: ["/bin/sh"]
        args: ["-c", "while true; do sleep 3600;done"]
        volumeMounts:
        - name: google-cloud-key
          mountPath: /var/secrets/google
        env:
        - name: GOOGLE_APPLICATION_CREDENTIALS
          value: /var/secrets/google/key.json
        ports:
        - containerPort: 8080
      imagePullSecrets:
      - name: imagepullsecretkey

标签: dockerkubernetesdockerfile

解决方案


推荐阅读