Kubernetes:创建具有特定环境的 Pod

Kubernetes: creating pod with specific environments

我试图为 uwsgi 配置创建一个具有特定环境的 pod,但这是这条消息:
加载失败"phptime.yml": JSON: 我无法解压字符串类型的值中的数字 Go 当我尝试 运行 这个命令时:
kubectl create -f phptime.yml
我发现在具有如下名称的环境中存在问题:
UWSGI_HTTP-MODIFIER1

UWSGI_PHP-SAPI-NAME


UWSGI_MASTER-AS-ROOT
但是对于具有下一个名称的环境都可以:
UWSGI_HTTP

UWSGI_INCLUDE
我们的很多容器都从环境中获取配置,我需要包括我所有的 conf 环境。这是我的 rc conf:

  containers:
  - name: phptime
    image: ownregistry/phpweb:0.5
    env:
    - name: UWSGI_UID
      value: go
    - name: UWSGI_GID
      value: go
    - name: UWSGI_INCLUDE
      value: /var/lib/go-agent/pipelines/test/test-dev0/.uwsgi_dev.ini
    - name: UWSGI_PHP-SAPI-NAME
      value: apache
    - name: UWSGI_HTTP
      value: :8086
    - name: UWSGI_HTTP-MODIFIER1
      value: 14
    - name: UWSGI_PIDFILE
      value: '/tmp/uwsgi.pid'
    - name: UWSGI_MASTER-FIFO
      value: '/tmp/fifo0'
    - name: UWSGI_MASTER-AS-ROOT
      value: 'true'
    - name: UWSGI_MASTER
      value: 'true'
    ports:
    - containerPort: 8086
    resources:
      limits:
        cpu: 500m
        memory: 200Mi
      requests:
        cpu: 500m
        memory: 200Mi
    volumeMounts:
    - mountPath: /var/lib/go-agent/pipelines/test/test-dev0/
      name: site
      readOnly: true
  volumes:
  - hostPath:
      path: /home/user/www/
    name: site

这是 kubernetes 问题还是我的问题?如何解决这个问题?谢谢!

您必须引用所有要设置为环境变量的值,yaml 解析器可能会将其解释为非字符串类型。

例如,在 influxdb-grafana-controller.yaml 中,值 truefalse 被引用是因为它们可以被解释为布尔值。相同的约束适用于纯数值。