问题描述
我正在尝试从config.txt文件制作一个简单的配置图:
config.txt:
----------
key1=val1
key2=val2
这是豆荚yaml:
apiVersion: v1
kind: Pod
metadata:
labels:
run: nginx
name: nginx
spec:
containers:
- image: nginx
name: nginx
command: [ "/bin/sh","-c","env" ]
env:
- name: KEY_VALUES
valueFrom:
configMapKeyRef:
name: keyvalcfgmap
key1: key1
key2: key2
通过运行 kubectl create configmap keyvalcfgmap --from-file=<filepath> -o yaml > configmap.yaml
并应用创建的configmap,我可以在pod中使用它。问题是如何?我尝试将其添加为卷或使用--from-file=
甚至使用envFrom
进行调用,但我能得到的最好的结果是,该卷只是安装了文件本身,而不是configmap。
解决方法
您可以像这样使用envFrom
apiVersion: v1
kind: Pod
metadata:
name: dapi-test-pod
spec:
containers:
- name: test-container
image: k8s.gcr.io/busybox
command: [ "/bin/sh","-c","env" ]
envFrom:
- configMapRef:
name: keyvalcfgmap #<--------------Here
restartPolicy: Never
或者您可以将configmap用作env
变量
env:
- name: NAME
valueFrom:
configMapKeyRef:
name: keyvalcfgmap #<--------------Here
key: key1
- name: NAME
valueFrom:
configMapKeyRef:
name: keyvalcfgmap #<--------------Here
key: key2