文档: https://kubernetes.io/zh-cn/docs/concepts/configuration/configmap/
Kubernetes 为我们提供了 ConfigMap,可以方便的配置一些变量
是一个存储键值对 key-value 对象的
创建一个可以包含多个键值对的 ConfigMap, 以下是:mul-cm.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: my-db-config
data:
db-url: localhost
---
apiVersion: v1
kind: Pod
metadata:
name: cm-app
labels:
name: cm-app
spec:
containers:
- name: cm-app
image: busybox
command: [ "sh", "-c", "env && sleep 60" ]
resources:
limits:
memory: "64Mi"
cpu: "500m"
envFrom:
- configMapRef:
name: my-db-config
$ kc apply -f mul-cm.yaml
创建
configmap/my-db-config created
pod/cm-app created
$ kc get configmap
查看 configmap
NAME DATA AGE
my-db-config 1 12s
$ kc get pod | grep cm
cm-app 1/1 Running 0 18s
$ kc logs cm-app | grep db
db-url=localhost
这里可以看到,配置的字段写入了环境变量
这样应用程序就可以读取环境变量了,实现了应用的解耦