如何将外部yml配置文件添加到Kubernetes配置图中

时间:2019-07-02 09:14:55

标签: kubernetes

我在config文件夹中有一个配置文件,即console-service.yml。我正在尝试使用configMap在运行时加载,以下是我的部署yml:

kind: Deployment
apiVersion: apps/v1
metadata:
  name: consoleservice
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: consoleservice
    spec:
      containers:
      - name: consoleservice
        image: docker.example.com/app:1
        volumeMounts:
        - name: console-config-volume
          mountPath: /config/console-server.yml
          subPath: console-server.yml
          readOnly: true
      volumes:
      - name: console-config-volume
        configMap:
          name: console-config



kind: ConfigMap
apiVersion: v1
metadata:
  name: consoleservice
data:
  pool.size.core: 1
  pool.size.max: 16

我是configMap的新手。如何从config/位置读取.yml配置?

1 个答案:

答案 0 :(得分:2)

针对您的问题,有两种可能的解决方案。

1。将文件直接嵌入到ConfigMap中
看起来像这样:

Array
(
    [0] => Array
        (
            [UserID] => 
            [Amount] => 
        )

    [1] => Array
        (
            [UserID] => 8418097
            [Amount] => 0.00
        )

)

2。从您的YAML文件创建ConfigMap
将通过使用kubectl完成:

 Array
    (
        [0] => Array
            (
                [UserID] => 6835406
                [Amount] => 0.00
            )

        [1] => Array
            (
                [UserID] => 8418097
                [Amount] => 0.00
            )

    )

这将创建一个包含所选文件的ConfigMap。您可以将多个文件添加到单个ConfigMap中。

您可以找到more informations in the Documentation