【问题标题】:Setting separate values for environment variable in HELM for DEV, PRESTAGING, STAGING and PROD在 HELM 中为 DEV、PRESTAGING、STAGING 和 PROD 设置单独的环境变量值
【发布时间】:2019-04-15 17:49:43
【问题描述】:

我目前正在使用 Helm 图表进行部署。 我基本上想做的是为不同的环境设置环境变量。

用例:

我正在使用 Helm 部署 Node JS 应用程序,并且基于将在部署时设置的环境变量 NODE_ENV 的值,我希望加载特定的配置文件。

例子:

  env:
    - name: NODE_ENV
      value: production
    ...

我正在浏览 HELM 图表,但我无法就如何使用 templates/deployment.yaml、values.yaml 和 deployment.yaml 来建立相同的点进行讨论。

注意:

它是相同的环境变量,将根据部署环境保存不同的值。

任何帮助都会有所帮助。

【问题讨论】:

    标签: environment-variables kubernetes-helm


    【解决方案1】:

    您可以使用模板来设置环境变量的值:

    - name: NODE_ENV
      value: {{ .Values.env | quote }}
    

    图表的values.yaml 文件应提供默认值:

    env: production
    

    当你实际去部署图表时,你可以提供一个额外的 YAML 值文件(或多个)

    helm install --name my-chart ./charts/my-chart -f values.dev.yaml
    

    然后该 YAML 文件可以提供覆盖图表默认值的值

    env: development
    mysqlHost: mysql-dev.example.com
    

    【讨论】:

      猜你喜欢
      • 2022-01-16
      • 2020-11-30
      • 2021-06-18
      • 2012-02-10
      • 1970-01-01
      • 1970-01-01
      • 2010-11-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多