云原生

40-存储-ConfigMap

2022-02-19  本文已影响0人  紫荆秋雪_文
k8s系统存储挂载原理.png

一、ConfigMap

ConfigMap用来将非机密性的数据保存到键值对中。使用时,Pods可以将其用作环境变量、命令行参数或者存储卷中的配置文件
ConfigMap将环境配置信息和容器镜像解耦,便于应用配置的修改

1、创建ConfigMap

apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-01
  namespace: raven
data:
  user_name: admin
  pass_word: admin12345
  user.properties: |
    color.good=purple
    color.bad=yellow

2、在Pod中使用ConfigMap

apiVersion: v1
kind: Pod
metadata:
  name: "config-demo"
  namespace: raven
  labels:
    app: "config-demo"
spec:
  containers:
  - name: config-demo
    image: nginx
    env:
      - name: user_info # 定义的环境变量
        valueFrom:
          configMapKeyRef:
            key: user_name # configMap 资源中的键
            name: cm-01 # 必须引用真实存在的 configMap 资源
      - name: user_properties # 定义的环境变量
        valueFrom:
          configMapKeyRef:
            key: user.properties # configMap 资源中的键
            name: cm-01 # 必须引用真实存在的 configMap 资源
    volumeMounts: # 在Pod中引用卷
      - name: config  # 下面挂载卷名称
        mountPath: app  # 挂载到容器中的目录
        readOnly: true
  volumes:
    - name: config  # 给configMap资源在Pod重新取个卷名称
      configMap:
        name: cm-01 # 必须引用真实存在的 configMap 资源
容器中挂载ConfigMap.png
上一篇 下一篇

猜你喜欢

热点阅读