在 HELM 中为 DEV、PRESTAGING、STAGING 和 PROD 设置单独的环境变量值
Setting separate values for environment variable in HELM for DEV, PRESTAGING, STAGING and PROD
我目前正在使用 Helm 图表进行部署。
我基本上想做的是为不同的环境设置环境变量。
用例:
我正在使用 Helm 来部署一个 Node JS 应用程序,并且基于将在部署时设置的环境变量 NODE_ENV 的值,我希望加载特定的配置文件。
示例:
env:
- name: NODE_ENV
value: production
...
我正在浏览 HELM 图表,但我无法就如何使用 templates/deployment.yaml、values.yaml 和 deployment.yaml 来建立相同的点.
注:
这是同一个环境变量,将根据部署环境保存不同的值。
任何帮助都会有所帮助。
您可以使用模板设置环境变量的值:
- 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
我目前正在使用 Helm 图表进行部署。 我基本上想做的是为不同的环境设置环境变量。
用例:
我正在使用 Helm 来部署一个 Node JS 应用程序,并且基于将在部署时设置的环境变量 NODE_ENV 的值,我希望加载特定的配置文件。
示例:
env:
- name: NODE_ENV
value: production
...
我正在浏览 HELM 图表,但我无法就如何使用 templates/deployment.yaml、values.yaml 和 deployment.yaml 来建立相同的点.
注:
这是同一个环境变量,将根据部署环境保存不同的值。
任何帮助都会有所帮助。
您可以使用模板设置环境变量的值:
- 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