ConfigMap 基础 #
ConfigMap 在运行时会将配置文件、命令行参数、环境变量、端口号以及其他配置工件绑定到 Pod 的容器和系统组件。借助 ConfigMap,您可以将配置与 Pod 和组件分开,这有助于保持工作负载的可移植性,使其配置更易于更改和管理,并防止将配置数据硬编码到 Pod 规范。
ConfigMap 可用于存储和共享非敏感、未加密的配置信息。要在集群中使用敏感信息,您必须使用 Secret。
创建 ConfigMap #
使用以下命令创建 ConfigMap:
kubectl create configmap [NAME] [DATA]
[DATA] 可以是: 包含一个或多个配置文件的目录的路径,使用 –from-file 标志指示 键值对,每个键值对都使用 –from-literal 标志指定 如需详细了解 kubectl create,请参阅参考文档。
您还可以通过在 YAML 清单文件中定义 ConfigMap 对象并使用 kubectl create -f [FILE] 部署对象来创建 ConfigMap。
使用 ConfigMap #
apiVersion: v1
kind: Pod
metadata:
name: dapi-test-pod
spec:
containers:
- name: test-container
image: k8s.gcr.io/busybox
command:
["/bin/sh", "-c", "echo $(SPECIAL_LEVEL_KEY) $(SPECIAL_TYPE_KEY)"]
env:
- name: SPECIAL_LEVEL_KEY
valueFrom:
configMapKeyRef:
name: special-config
key: SPECIAL_LEVEL
- name: SPECIAL_TYPE_KEY
valueFrom:
configMapKeyRef:
name: special-config
key: SPECIAL_TYPE
restartPolicy: Never
叶王 © 2013-2024 版权所有。如果本文档对你有所帮助,可以请作者喝饮料。