如何跨图表重用 Helm 模板?

Lar*_*erg 4 kubernetes-helm

以下是我的 Helm 图表的组织方式:

helm-charts/
  service1/
    Chart.yaml
    templates/
      deployment.yaml
      ingress.yaml
      service.yaml
    values.yaml
  service2/
    Chart.yaml
    templates/
      deployment.yaml
      ingress.yaml
      service.yaml
    values.yaml
Run Code Online (Sandbox Code Playgroud)

现在我有几个服务几乎共享相同的模板内容,只有部署名称和部署端点等一些设置不同。

是否有一个多个 Helm 图表的可重用模板?

Lar*_*erg 5

Helm 3 引入了“库图表”的概念,它允许使用 Helm 图表进行 DRY(不要重复自己)。从它的文档:

库图表是一种 Helm 图表,它定义了图表基元或定义,可以由其他图表中的 Helm 模板共享。这允许用户共享可以跨图表重复使用的代码片段,避免重复并保持图表干燥。

完整的手册可以在这里找到:https : //helm.sh/docs/topics/library_charts/