首页 > 解决方案 > helm 模板值和设置变量

问题描述

我的服务模板中有此部分。如果定义了变量 publicIP,我想定义 loadBalancerIP。

  {{- if .Values.publicIP }}
  loadBalancerIP: {{ .Values.publicIP }}
  {{- end }}  

在我的价值观中。$environment.yml

我定义

公共IP:空

我需要在进行 helm install 时定义 publicIP,例如:

helm install release release/path -f values.$environment.yml  -—set publicIP=127.0.0.1

但它不起作用。我可以做些什么来定义 publicIP 并且它在我的模板中定义?

标签: kuberneteskubernetes-helmhelmfile

解决方案


我不确定我是否理解这个问题,但如果你想设置一个单独的参数,你需要这样做

“ - 放”

例如:helm install --set foo=bar ./mychart


你的 values.yml 的名称是什么?值.$environment.yml?也试试这样的命令

helm install release release/path -f --values {YOUR_VALUES_FILE}.yml  --set publicIP=127.0.0.1

并确保使用--,您在提供的示例中似乎使用了比普通破折号长得多的奇怪特殊字符。

其次,publicIP是根参数吗?如果您在 {YOUR_VALUES_FILE}.yml 中有类似的内容

root
  node: null

你需要这样设置:

helm install release release/path -f --values {YOUR_VALUES_FILE}.yml  --set root.node=value

推荐阅读