我们有一个部署在AKS集群中的映像,在部署过程中需要使用configmaps更新映像。
配置文件具有以下密钥,我们试图替换“ ChildKey”的值而不替换整个文件-
{
"ParentKey": {
"ChildKey": "123"
}
}
配置图看起来像-
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
该替换不适用于上述设置。有没有其他方法来声明嵌套结构的键名?
答案 0 :(得分:0)
我们已经通过以下方式解决了这个问题-
configmap带有一个更简单的结构-仅子元素-
apiVersion: v1
data:
ChildKey: 456
kind: ConfigMap
name: cf
在部署中,环境变量键是指这样的子键-
apiVersion: extensions/v1beta1
kind: Deployment
spec:
template:
metadata:
creationTimestamp: null
labels:
app: abc
spec:
containers:
- env:
- name: ParentKey__ChildKey
valueFrom:
configMapKeyRef:
key: ChildKey
name: cf
将其发布以供参考。