ConfigMap

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

本文访问量

本站总访问量

本站总访客数 人次