问题标签 [helm3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - 舵图。我无法通过 --set 向容器发送命令
在 deployment.yaml 中:
我尝试添加:
然后我尝试传递命令:
但没有任何效果。
如何通过--set pass?
谢谢你。
kubernetes-helm - Helm 依赖范围失败
拿一个伞形图来说,伞形图,有一个子图,sub_chart:
伞图在 Chart.yaml 中定义如下依赖项:
而 sub_chart 有一个 Chart.yaml 像:
作为我的 CI/CD 管道的一部分,我想在打包和推送之前将 Jenkins 内部版本号附加到 sub_chart 的版本号。这工作正常。对于 build 123,我最终将 0.1.0-123 版本推送到本地开发。
但是,当我运行时,出现helm dep up umbrella_chart
以下错误:
我认为使用波浪号可以让 helm 使用 >0.1.0 和 <0.2.0 的任何图表版本?我是否需要在我的仓库中有一个 0.1.0 版本的 sub_chart 才能构建伞形图?它会在那个实例中使用正确的 0.1.0-123 版本的 sub_chart 吗?
谢谢你的帮助
kubernetes-helm - 如何在 helm3 图表中设置字段应用程序版本?
我在 k8s 中使用 helm 升级我的 spring 应用程序。我有默认图表并使用命令
在 dir my-app-chart 我有文件 Chart.yaml
我希望 helm 评估字段 appVersion 并且在 helm history 我看到 123,但现在我看到了
如何正确设置字段 appVersion?
kubernetes-helm - 为工作创建掌舵图
我正在为我想在我们的 k8 集群中运行的作业创建一个掌舵图。当您执行helm create
它时,它会创建我不需要的模板。
有没有办法只创建一个只包含 job.yaml 的模板?
kubernetes - 有没有办法为 helm post-install hook 启用 shareProcessNamespace?
我正在运行一个带有 3 个容器(telegraf、fluentd 和一个内部代理)的 pod,它使用shareProcessNamespace: true
.
我编写了一个 python 脚本来从中央控制器 API 端点获取电报的初始配置和流利的。由于这是一次性操作,我计划使用 helm post-install hook。
在获取配置之前,python 脚本需要检查 telegraf/fluentd/agent 进程是否已启动。我打算等待(超时)直到pgrep <telegraf/fluentd/agent>
返回 true,然后触发 API。有没有办法启用shareProcessNamespace
安装后挂钩?谢谢。
PS:目前,代理调用python脚本及其自己的启动脚本。它有效,但它很笨拙。我想将其移出代理容器。
kubernetes - 使用字典拆分和范围的 Helm 模板缩进错误
我正在尝试设置在我的 helm 图表中拥有动态数量的 volume 和 volumeMounts 的能力。这是我的 deployment.yaml 的外观:
在 values.yaml 我有这样的东西:
我正在做的是检查是否为 hostPath 定义了任何内容。如果有我创建一个字典,用':'分割项目。在第一个示例中,只有一个值字符串,因为 : 分隔符不存在。然后它执行一个循环范围(如果有多组值由':'分隔),然后它用逗号分割一组值。
因此,对于第一个示例,使用 helm install 可以正常工作:
类型字段是可选的,所以我有一个块来检查它是否已定义,如果没有,它不会在 yaml 中呈现它。所以在我的下一个例子中,当我在最后一个逗号之后没有任何价值时,它也可以工作:
但是现在,如果我尝试添加第二组数据,以“:”分隔,则在 helm install 时会失败:
当然它提到了一个标签,但我不太清楚问题是什么。我已经使用相同的代码(dict、range、split)来填充配置映射中的多个条目,所以我认为它可以工作。但显然我在这里遗漏了一些东西。任何帮助,将不胜感激。
kubernetes-helm - 舵。执行 bash 脚本以选择正确的图像
头盔文件:
我想执行 bash 脚本来检查这个图像是否存在。如果没有,则将拍摄其他图像。helm如何做到这一点?或者有什么解决办法吗?
spring - 用于 configmap 的 Helm 模板预定义数组迭代
嗨,我们在 values.yaml 中有 listenerProcessor 数组,如下所示
为此,我们需要合并我们预定义的一组 listenerProcessor 数组,该数组未通过 values.yaml 公开,如下所示
所以要将这两个合并为单个属性并对其进行迭代,在 _helper.tpl 中定义了一个变量
现在我需要在 NOTES.txt 中的.name和.port上对其进行迭代,但它给出了错误“<.name>: can't evaluate field name in type interface {}”。在 NOTES.txt 我有这个
当我只打印$element & $index这些值时,它显示在输出下方
监听处理器
kubernetes-helm - 如何使用带有默认空/空值的 toyaml?
我真的想避免“如果”条件,因为这感觉像是可以以更易读的方式处理的东西。
我有这样的价值:
并像这样使用它:
但是这个值可能是空的,我想支持它。因此,如果healthChecks:
未指定该值,则图表不会呈现它。我该怎么做呢?
我希望 toYaml 足够聪明,可以看到 .Values.healthChecks 为空并且不执行任何操作,但会引发错误:unable to parse YAML: error converting YAML to JSON: yaml: line X: could not find expected ':'
我真的需要一个 if 条件吗?如果值为空,是否有内置方法让 toYaml 什么也不做?
kubernetes-helm - 让 Helm 在图表中包含文件但不解析它们并能够使用 -f 引用它们
现在我的应用程序存储库的目录如下所示:
图表在myappChart/
其中,我的 dev/prod 设置在 dev/prod yaml 文件中。在部署时,如果它是 dev 或 prod,则提供正确的配置-f
。
我想将我的 dev/prod YAML 文件包含在图表本身中。因此,当我将图表推送到存储库时,它包含配置,当我将其拉下时,我得到图表及其配置。
Helm 支持这个吗?这不是 helmignore 用例。我想将这些文件包含在图表中,但我不希望 helm 像处理清单一样处理它们 - 它们是值文件(但不是默认的 values.yaml 文件,特定于 env 的文件)。
我想要避免的是一些奇怪的事情,比如命名文件 dev.yaml.deploy 然后让脚本在运行 helm upgrade 之前拉下图表并移动和重命名这些文件。-f
当它被拉下时,引用它们并将它们放在图表的文件夹中会很好。