22.3. 使用案例: 在 Pod 中使用 ConfigMap
以下小节描述了在 pod 中消耗 ConfigMap 对象时的一些用例。
22.3.1. 在环境变量中消耗 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
ConfigMap 可用于填充各个环境变量,或者从构成有效环境变量名称的所有键填充环境变量。例如,请考虑以下 ConfigMap :
有两个环境变量的 ConfigMap
apiVersion: v1
kind: ConfigMap
metadata:
name: special-config
namespace: default
data:
special.how: very
special.type: charm
包含一个环境变量的 ConfigMap
apiVersion: v1
kind: ConfigMap
metadata:
name: env-config
namespace: default
data:
log_level: INFO
您可以使用 configMapKeyRef 部分在 pod 中消耗此 ConfigMap 的键:
配置为注入特定环境变量的 pod 规格示例
apiVersion: v1
kind: Pod
metadata:
name: dapi-test-pod
spec:
containers:
- name: test-container
image: gcr.io/google_containers/busybox
command: [ "/bin/sh", "-c", "env" ]
env:
- name: SPECIAL_LEVEL_KEY
valueFrom:
configMapKeyRef:
name: special-config
key: special.how
- name: SPECIAL_TYPE_KEY
valueFrom:
configMapKeyRef:
name: special-config
key: special.type
optional: true
envFrom:
- configMapRef:
name: env-config
restartPolicy: Never
当此 pod 运行时,其输出将包含以下行:
SPECIAL_LEVEL_KEY=very
log_level=INFO