您可以使用所有常见的 env 变量对创建一个 ConfigMap 。key:value
configMap
然后你可以重用 configmap 来声明as environment in的所有值Deployment
。
这是一个取自kubernetes 官方文档的示例。
创建一个包含多个键值对的 ConfigMap。
apiVersion: v1
kind: ConfigMap
metadata:
name: special-config
namespace: default
data:
SPECIAL_LEVEL: very
SPECIAL_TYPE: charm
使用 envFrom 将所有 ConfigMap 的数据定义为 Pod 环境变量。ConfigMap 中的键成为 Pod 中的环境变量名称。
apiVersion: v1
kind: Pod
metadata:
name: test-pod
spec:
containers:
- name: test-container
image: k8s.gcr.io/busybox
command: [ "/bin/sh", "-c", "env" ]
envFrom:
- configMapRef:
name: special-config # All the key-value pair will be taken as environment key-value pair
env:
- name: uncommon
value: "uncommon value"
restartPolicy: Never
您可以在字段中指定不常见的环境变量env
。
现在,要验证环境变量是否实际可用,请查看日志。
$ kubectl logs -f test-pod
KUBERNETES_PORT=tcp://10.96.0.1:443
SPECIAL_LEVEL=very
uncommon=uncommon value
SPECIAL_TYPE=charm
...
在这里,可以看到所有提供的环境都可用。