ConfigMap是一种比较特殊的存储卷,它的主要作用是用来存储配置信息的。
cat >test.yaml <<EOF
apiVersion: v1
kind: ConfigMap
metadata:
name: configmap
namespace: dev
data:
info:
username:admin
password:123456
hello: world
---
apiVersion: v1
kind: Pod
metadata:
name: pod-configmap
namespace: dev
spec:
containers:
- name: nginx
image: nginx:1.17.1
volumeMounts: # 将configmap挂载到目录
- name: config
mountPath: /configmap/config
volumes: # 引用configmap
- name: config
configMap:
name: configmap
EOF
# 创建configmap和pod
kubectl create -f test.yaml
# 查看configmap详情
kubectl describe cm configmap -n dev
'''Name: configmap
Namespace: dev
Labels: <none>
Annotations: <none>
Data
====
hello:
----
world
info:
----
username:admin password:123456
Events: <none>
'''
#进入容器
kubectl exec -it pod-configmap -n dev /bin/sh
cd /configmap/config/ && ls #hello info
cat hello #world#
cat info #username:admin password:123456#
'''可以看到映射已经成功,每个configmap都映射成了一个目录
key--->文件 value---->文件中的内容
此时如果更新configmap的内容, 容器中的值也会动态更新'''