【问题标题】:How to loop different templates in Helm for Kubernetes?如何在 Helm for Kubernetes 中循环不同的模板?
【发布时间】:2019-03-14 18:13:34
【问题描述】:

我想部署多个具有不同映像、端口等但具有非常相似的其他属性的 Pod 部署。所以我想声明一个类似这样的deployment.yaml 文件

{{- range .Values.types }}
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
...
{{- end }}

我的values.yaml 在哪里

types:
  - foo
  - bar
  - baz

但是,当我helm install 时,这只会启动一个 Kubernetes 部署,因为所有内容都在一个模板文件中。关于如何做到这一点的任何想法?

【问题讨论】:

标签: kubernetes kubernetes-helm


【解决方案1】:

Kubernetes 通常使用 YAML 语法,这允许多个“文档”位于单个物理文件中,每个文件前有一个 --- 分隔符。反过来,Helm 通常通过应用模板来生成纯文本文件并实际上将其提供给 kubectl apply

这样做的结果是,如果您使用 --- 开始文档分隔符开始每个 Kubernetes 对象描述,它应该可以工作:

{{- range .Values.types }}
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
...
{{- end }}

【讨论】:

  • 这对我不起作用,列表的第一个元素消失了
猜你喜欢
  • 1970-01-01
  • 2013-10-26
  • 2018-05-25
  • 2023-03-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-06
  • 2021-10-17
相关资源
最近更新 更多