kubernetes:将环境变量设置为整数

kubernetes: set environment variable as integer

我想用整数值设置 Kubernetes 部署环境,但我必须引用 Kubernetes 部署的值才能接受它。这使得 env 值成为一个字符串,并导致应用程序中出现 TypeError

是否有任何解决方法可以将整数或浮点值设置为 env?

通常它在评论中得到了回答,但是我会添加来自官方 kubernetes 文档的引用。

env 字段使用 EnvVar array。基于 EnvVar v1 core API 组,namevalue 应该只是字符串。 请参阅 EnvVar v1 core

下面是一个官方示例,可以了解如何设置变量:

apiVersion: v1
kind: Pod
metadata:
  name: dependent-envars-demo
spec:
  containers:
    - name: dependent-envars-demo
      args:
        - while true; do echo -en '\n'; printf UNCHANGED_REFERENCE=$UNCHANGED_REFERENCE'\n'; printf SERVICE_ADDRESS=$SERVICE_ADDRESS'\n';printf ESCAPED_REFERENCE=$ESCAPED_REFERENCE'\n'; sleep 30; done;
      command:
        - sh
        - -c
      image: busybox
      env:
        - name: SERVICE_PORT
          value: "80"
        - name: SERVICE_IP
          value: "172.17.0.1"
        - name: UNCHANGED_REFERENCE
          value: "$(PROTOCOL)://$(SERVICE_IP):$(SERVICE_PORT)"
        - name: PROTOCOL
          value: "https"
        - name: SERVICE_ADDRESS
          value: "$(PROTOCOL)://$(SERVICE_IP):$(SERVICE_PORT)"
        - name: ESCAPED_REFERENCE
          value: "$$(PROTOCOL)://$(SERVICE_IP):$(SERVICE_PORT)"

Link 这个例子是 here