《每天5分钟玩转 Kubernetes》10 ConfigMap

secret 用于存放敏感数据,configmap 用于存放普通数据,用法与 secret 类似。

创建

apiVersion: v1
kind: ConfigMap
metadata:
  name: special-config
  namespace: default
data:
  SPECIAL_LEVEL: very
  SPECIAL_TYPE: charm

启动:

kubectl apply -f configmap1.yml

pod 中使用 configmap(env 方式)

配置文件 pod-configmap1.yml:

apiVersion: v1
kind: Pod
metadata:
  name: dapi-test-pod
spec:
  containers:
    - name: test-container
      image: busybox
      command: [ "/bin/sh", "-c", "env" ] # 启动时输出环境变量
      envFrom:
      - configMapRef:
          name: special-config
  restartPolicy: Never

启动:

kubectl apply -f pod-configmap1.yml

查看 pod 日志:

kubectl logs dapi-test-pod | grep SPECIAL

SPECIAL_LEVEL=very
SPECIAL_TYPE=charm

正常读取到了 configmap。

pod 中使用 configmap(volume 方式)

配置文件 pod-configmap2.yml:

apiVersion: v1
kind: Pod
metadata:
  name: dapi-test-pod2
spec:
  containers:
    - name: test-container
      image: busybox
      command: [ "/bin/sh", "-c", "ls /etc/config/" ]
      volumeMounts:
      - name: config-volume
        mountPath: /etc/config
  volumes:
    - name: config-volume
      configMap:
        name: special-config
  restartPolicy: Never

启动:

kubectl apply -f pod-configmap2.yml

查看日志:

kubectl logs dapi-test-pod2

SPECIAL_LEVEL
SPECIAL_TYPE

成功拿到了 configmap。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容