我可以在一个Helm chart中有多个values.yaml
文件吗?
比如mychart/templates/internalValues.yaml
,mychart/templates/customSettings.yaml
等等。{{ .Values.property1 }}
可以修改values.yaml
文件中的属性。如何引用这些自定义values.yaml
文件中的属性?
我可以在一个Helm chart中有多个values.yaml
文件吗?
比如mychart/templates/internalValues.yaml
,mychart/templates/customSettings.yaml
等等。{{ .Values.property1 }}
可以修改values.yaml
文件中的属性。如何引用这些自定义values.yaml
文件中的属性?
3条答案
按热度按时间aurhwmvo1#
是的,Helm可以有多个值文件。只需使用**
--values
标志(或-f
**)。示例如下:
字符串
也可以使用**
--set
**传入单个值。示例如下:
型
您可以多次指定'--values'/'-f'标志。优先级将赋予最后一个(最右侧)指定的文件。
您可以多次指定'--set'标志。优先级将赋予最后(最右侧)指定的集合。
(Thanks to [Seth](https://stackoverflow.com/users/5505583/seth) for the updated docs link)
个xxls0lw82#
默认情况下,Helm只使用图表根目录中的
values.yaml
文件。您可以在安装时要求它加载其他值文件。例如,如果您有任何指向不同环境中不同数据库的设置:
字符串
您还可以通过将其他设置捆绑为文件来获得类似的效果,asking Helm to read the bundled file.helm提供了一个未记录的fromYaml模板函数,它可以解析该文件,因此原则上您可以执行以下操作:
型
zzzyeukh3#
更新:根据当前的official documentation
--set
和--values
将不会合并要覆盖图表中的值,请使用“--values”标志并传入文件,或者使用“--set”标志并从命令行传递配置,以强制字符串值使用“--set-string”。如果值很大,因此您既不想使用“--values”也不想使用“--set”,请使用“--set-file "从文件中读取单个大值。
还有:
您可以多次指定'--values'/'-f'标志。优先级将赋予最后一个(最右侧)指定的文件。