【问题标题】:microprofile-config.properties as ConfigMap in Openlibertymicroprofile-config.properties 作为 Openliberty 中的 ConfigMap
【发布时间】:2022-02-14 17:43:40
【问题描述】:

This example 展示了如何将 ConfigMaps 与 openliberty 一起使用。

对我来说,问题是您必须在每个 kubernetes 部署中为 env 变量创建一个部分。

containers:
      - name: system-container
        image: system:1.0-SNAPSHOT
        ports:
        - containerPort: 9080
        # Set the environment variables
        env:
        - name: CONTEXT_ROOT
          valueFrom:
            configMapKeyRef:
              name: sys-app-root
              key: contextRoot
        - name: SYSTEM_APP_USERNAME
          valueFrom:
            secretKeyRef:
              name: sys-app-credentials
              key: username
        - name: SYSTEM_APP_PASSWORD
          valueFrom:
            secretKeyRef:
              name: sys-app-credentials
              key: password

上传microprofile-config.properties 是不是更容易
ConfigMap 并将其作为卷安装到正确的位置?

【问题讨论】:

  • 提供的答案对您有帮助吗?

标签: kubernetes jakarta-ee configmap open-liberty


【解决方案1】:

您不必为每个值创建 env 部分。您可以从 microprofile-config.properties 文件创建配置映射,然后使用 envFrom 加载所有密钥对,如下所示:

      envFrom:
      - configMapRef:
          name: my-microprofile-config

但也许我错过了你真正的问题......

【讨论】:

    【解决方案2】:

    由于您使用的是 open-liberty,我也认为使用 microprofile-config.properties 文件创建自己的配置映射是个好主意。


    根据this documentation

    MicroProfile Config 允许您在称为ConfigSources 的大量位置中定义配置值,称为“配置属性”值。

    要加载所有密钥对,可以使用envForm(就像@Gus 建议的那样)。

    根据this documentation: 可以使用envForm 将ConfigMap 的所有数据定义为容器环境变量。

    ConfigMap 中的 key 成为 Pod 中的环境变量名。

    Here is the example of use envForm:

    apiVersion: v1
    kind: Pod
    metadata:
      name: dapi-test-pod
    spec:
      containers:
        - name: test-container
          image: k8s.gcr.io/busybox
          command: [ "/bin/sh", "-c", "env" ]
          envFrom:
          - configMapRef:
              name: special-config
      restartPolicy: Never
    

    要加载您需要此废料的所有密钥对:

          envFrom:
          - configMapRef:
              name: special-config
    

    另请参阅 thisthis 文档。

    【讨论】:

      猜你喜欢
      • 2019-09-30
      • 2023-02-07
      • 2021-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-02
      • 2022-01-02
      • 1970-01-01
      相关资源
      最近更新 更多