我想要特定的configMap结构
apiVersion: v1
kind: ConfigMap
metadata:
name: config-map-router1
labels:
name: nc1
data:
object.properties: |
address: "1"
port: ""
如何用缩进表示
我们必须再开发这部分代码
Map<String, String> data = new HashMap<>();
data.put("address","");
//...
V1ConfigMap configMap= new V1ConfigMap();
configMap.apiVersion("v1");
configMap.kind("ConfigMap");
configMap.metadata(meta);
configMap.data(data);
最佳答案
我假设您正在使用Java客户端。
从文件创建configmap时,出现object.properties缩进。示例:kubectl create configmap myapp-config --from-file=object.properties
。
From what I have researched Java客户端似乎仅支持<string, string>
作为数据值。由于文件object.properties仅包含UTF-8字符,因此您可以尝试:
data.put("object.properties","address: \"1\"\nport: \"\"")
或创建如下文件并以Java字符串形式打开:
address: "1"
port: ""
您还可以打开文件并使用binaryData代替data作为二进制文件添加到configmap中
关于kubernetes - 如何使用Kubernetes客户端Api部署ConfigMap,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57529026/