vee*_*987 5 kubernetes kubernetes-helm
如何在使用命令行设置values.helm install 时将参数键值保存到values.yaml 文件中。--name test --set image.tag=2020 --set image.version=20 如何将此image.tag和image.version值更新为values.yaml?试运行会给出结果,但不会更新values.yaml
Helm是一个包管理器,它的作用是自动部署 kubernetes 应用程序。它被设计为有点静态,并且只能由图表的创建者更改。
值文件提供对传递到图表中的值的访问。其内容来自多个来源:
- 图表中
values.yaml的文件- 如果这是子图表,则为父图表的
values.yaml文件-f如果使用标志 (helm install -f myvals.yaml ./mychart)传递到 helm install或 helm Upgrade中,则为值文件--set使用(例如helm install --set foo=bar ./mychart)传递的各个参数
这是值文件的基本层次结构,但还有更多内容:
values.yaml完全按照您的想法更改图表文件,因为原始文件values.yaml将保持图表创建者所需的状态。helm install或期间所做的更改helm upgrade。我将尝试举例说明您的使用场景:
image: original-image
version: original-version
Run Code Online (Sandbox Code Playgroud)
--set示例中的方法更改一些值helm install --name abc --set image=abc --set version-123。导致:image: abc
version: 123
Run Code Online (Sandbox Code Playgroud)
version值,但保持其他值不变,您可以运行:`helm update --set version=124 --reuse-values,以下是有效的结果值:image: abc
version: 124
Run Code Online (Sandbox Code Playgroud)
注意:正如我们在流程图中看到的,如果您不指定 --reuse-values ,它将重置升级期间未包含的值--set以返回图表的原始值。在这种情况image下又会是original-image。
因此,总结一下您的主要问题:
如何在 helm 安装/升级中将 --set key 值持久保存到 value.yaml ?
您可以始终使用 来保留--set值,但是更改永远不会提交到文件的原始模板。upgrade--reuse-valuesvalues.yaml
如果您是图表的所有者,建议您创建图表的发布版本,以便您可以跟踪每个版本中的默认值。
我希望它有助于澄清问题。
如果我可以进一步帮助您,请在评论中告诉我。
| 归档时间: |
|
| 查看次数: |
7822 次 |
| 最近记录: |