读取为环境变量
从ConfigMap中读取配置数据为环境变量时,可以从中读取单个条目,也可以一次性读取所有条目。
读取为环境变量,不需要将ConfigMap挂载为卷,直接在配置文件中将其中的配置数据传入容器的环境变量中即可。
读取单个条目
在Pod的配置文件中,spec.containers.env.valueFrom.configMapKeyRef
中可以指定读取的ConfigMap。
例如,为容器创建一个键为INTERVAL
的环境变量,其值引用的是名为fortune-config
的ConfigMap中的键为sleep-interval
的条目的值:
读取所有条目
在Pod的配置文件中,spec.containers.envFrom.configMapRef
中可以指定读取的ConfigMap,它会将指定的ConfigMap中的所有条目都读入容器中,其Key和Value与ConfigMap中的条目一致。
如果ConfigMap中某键名不符合环境变量的键名格式,那么在创建环境变量时,会自动忽略对应的条目。
例如,容器从名为fortune-config
的ConfigMap中读取所有条目作为环境变量:
通过指定spec.containers.envFrom.prefix
可以为读入的所有环境变量添加前缀,比如ConfigMap中包含键为FOO
、BAR
的两个条目,那么可以通过下面这种方式添加前缀CONFIG_
,令读入容器中的环境变量变成CONFIG_FOO
、CONFIG_BAR
:
Last updated
Was this helpful?