我们在AKS集群中部署了一个映像,需要在部署期间使用configmap更新该映像的配置条目。
配置文件具有以下键,我们正在尝试替换“ChildKey”的值而不替换整个文件-
{
"ParentKey": {
"ChildKey": "123"
}
}
配置Map如下所示-
apiVersion: v1
data:
ParentKey: |
ChildKey: 456
kind: ConfigMap
name: cf
在部署中,configmap的用法如下-
apiVersion: extensions/v1beta1
kind: Deployment
spec:
template:
metadata:
creationTimestamp: null
labels:
app: abc
spec:
containers:
- env:
- name: ParentKey
valueFrom:
configMapKeyRef:
key: ParentKey
name: cf
替换不适用于上面的设置。是否有其他方法来声明嵌套结构的键名?
2条答案
按热度按时间nhhxz33t1#
我们以下列方式处理这个问题:
configmap具有更简单的结构-只有子元素-
在部署中,环境变量key引用子键,如下所示-
把这个贴出来做参考。
bz4sfanl2#
对嵌套的环境变量和数组使用双下划线,如下所述
要避免显式环境变量和键入两次名称,可以使用
envFrom
configMap.yaml
deployment.yml