依赖
本指南部分介绍了在 Chart.yaml
中声明的 依赖项
的最佳实践。
版本
尽可能使用版本范围,而不是固定到特定版本。建议的默认值是使用修补程序级别的版本匹配
version: ~1.2.3
这将匹配版本 1.2.3
及其任何修补程序。换句话说,~1.2.3
等同于 >= 1.2.3, < 1.3.0
有关完整的版本匹配语法,请参见 semver 文档。
预发布版本
上述版本约束不会匹配预发布版本。例如 version: ~1.2.3
将匹配 version: ~1.2.4
但不匹配 version: ~1.2.3-1
。以下提供了预发布和修补程序级别的匹配
version: ~1.2.3-0
仓库 URL
尽可能使用 https://
仓库 URL,其次是 http://
URL。
如果仓库已添加到仓库索引文件,则可以使用仓库名称作为 URL 的别名。使用 alias:
或 @
后跟仓库名称。
文件 URL (file://...
) 被视为由固定部署管道组装的图表的“特殊情况”。
使用 下载器插件 时,URL 方案将特定于插件。请注意,图表用户需要安装支持该方案的插件才能更新或构建依赖项。
当 repository
字段为空时,Helm 无法对依赖项执行依赖项管理操作。在这种情况下,Helm 假设依赖项位于 charts
文件夹的子目录中,名称与依赖项的 name
属性相同。
条件和标签
应将条件或标签添加到任何可选的依赖项。
条件的首选形式是
condition: somechart.enabled
其中 somechart
是依赖项的图表名称。
当多个子图表 (依赖项) 一起提供可选或可交换功能时,这些图表应共享相同的标签。
例如,如果 nginx
和 memcached
一起为图表中的主应用程序提供了性能优化,并且在启用该功能时需要同时存在,那么它们都应具有如下标签部分
tags:
- webaccelerator
这允许用户使用一个标签来打开和关闭该功能。