依赖

本指南部分介绍了在 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 是依赖项的图表名称。

当多个子图表 (依赖项) 一起提供可选或可交换功能时,这些图表应共享相同的标签。

例如,如果 nginxmemcached 一起为图表中的主应用程序提供了性能优化,并且在启用该功能时需要同时存在,那么它们都应具有如下标签部分

tags:
  - webaccelerator

这允许用户使用一个标签来打开和关闭该功能。