---
title: Helm 分环境 values 管理与模板函数实践
keywords: values, include, toYaml, nindent, required, default, tpl
description: 通过多环境值文件与模板函数提升 Chart 可维护性与一致性,规范渲染与参数校验。
categories:
- 文章资讯
- 办公技巧
---
示例 values-dev.yaml:
env: dev
image:
repository: registry.example.com/app
tag: dev-20250101
resources:
requests:
cpu: 200m
memory: 256Mi
extra:
featureX: true
示例 values-prod.yaml:
env: prod
image:
repository: registry.example.com/app
tag: v1.2.3
resources:
requests:
cpu: 500m
memory: 512Mi
extra:
featureX: false
模板片段(ConfigMap 与校验):
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "app.fullname" . }}-config
data:
APP_ENV: {{ .Values.env | quote }}
IMAGE_REPO: {{ required "image.repository required" .Values.image.repository | quote }}
IMAGE_TAG: {{ default "latest" .Values.image.tag | quote }}
EXTRA: |
{{- toYaml .Values.extra | nindent 4 }}
以 dev 环境安装/升级:
helm install app ./chart -f values-dev.yaml
helm upgrade app ./chart -f values-dev.yaml
使用 tpl 渲染可模板化值:
metadata:
labels:
rendered: {{ tpl "{{ .Values.env }}-label" . | quote }}

发表评论 取消回复