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 中,值 true
和 false
被引用是因为它们可以被解释为布尔值。相同的约束适用于纯数值。
我试图为 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 中,值 true
和 false
被引用是因为它们可以被解释为布尔值。相同的约束适用于纯数值。