1

我想在应用程序 YAML 文件的 configMap 的数据部分中传递一个列表对象。

我在属性文件中有以下列表:

abc.management.provider[0].url=https://example.com
 abc.management.provider[0].username=John
 abc.management.provider[1].url=https://example2.com
 abc.management.provider[1].username=Targerian

YAML 文件:

data:
    abc_management:
      provider:
        - url: "https://example.com"
          username: "John"
        - url: "https://example2.com"
          username: "Targerian"

我收到此错误:版本“v1”中的 ConfigMap 无法作为 ConfigMap 处理:v1.ConfigMap:数据:ReadString:期望“或 n,。

我应该怎么办?

4

2 回答 2

1

我应该怎么办?

这主要取决于您的应用程序如何读取配置。

如果它适合您,您可以直接使用您的属性文件创建:ConfigMap

kubectl create configmap app-config --from-file=app.properties
于 2020-08-25T13:17:22.197 回答
0

我认为这个问题指出了 ConfigMap 对象的本质是什么。在幕后,似乎ConfigMaps 没有明确处理列表,所以最终它只取决于您如何阅读该内容。

数据字段旨在包含 UTF-8 字节序列...

data 或 binaryData 字段下的每个键必须由字母数字字符、-、_ 或 . 组成。存储在 data 中的键不得与 binaryData 字段中的键重叠。

https://kubernetes.io/docs/concepts/configuration/configmap/#configmap-object

于 2021-04-14T19:06:15.370 回答