使用场景:存储应用配置信息,保存键值对、属性或者保存文件

目录

创建ConfigMap

在环境变量中引用

在Volume中引用


​​​​​​​

创建ConfigMap

创建configmap-test.yaml内容如下:

apiVersion: v1
kind: ConfigMap
metadata:
  name: configmap-test
data:                     # 配置数据
  property_1: Hello
  property_2: World

创建

在环境变量中引用

编辑env-configmap.yaml,引用configmap-test的property_1,将其作为环境变量EXAMPLE_PROPERTY_1的值

apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
  - image: nginx:alpine
    name: container-0
    resources:
      limits:
        cpu: 100m
        memory: 200Mi
      requests:
        cpu: 100m
        memory: 200Mi
    env:
    - name: EXAMPLE_PROPERTY_1
      valueFrom:
        configMapKeyRef:          # 引用ConfigMap
          name: configmap-test
          key: property_1
  imagePullSecrets:
  - name: default-secret

进入pod,测试环境变量是否配置成功

kubectl exec -it nginx -- /bin/sh

env

 

在Volume中引用

在Volume中引用ConfigMap,就是通过文件的方式直接将ConfigMap的每条数据填入Volume,每条数据是一个文件,键就是文件名,键值就是文件内容 ,创建vol-configmap.yaml,将Volume挂载到容器的“/tmp”路径下

在做实验前,可以先把上一步的删除,kubectl delete -f env-configmap.yaml

apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
  - image: nginx:alpine
    name: container-0
    resources:
      limits:
        cpu: 100m
        memory: 200Mi
      requests:
        cpu: 100m
        memory: 200Mi
    volumeMounts:
    - name: vol-configmap           # 挂载名为vol-configmap的Volume
      mountPath: "/tmp"
  imagePullSecrets:
  - name: default-secret
  volumes:
  - name: vol-configmap
    configMap:                      # 引用ConfigMap
      name: configmap-test

 

验证是否挂载成功 

 以上实验都是参考华为云的教程

ConfigMap_云容器引擎 CCE_Kubernetes基础知识_配置管理_华为云

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐