问题标签 [sprig-template-functions]

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.

0 投票
1 回答
292 浏览

kubernetes - helm chart / go-template | 从字符串翻译环境变量

我的 Kubernetes 集群中有一个通用 helm 图表,它采用带有环境变量(由 KEY=VALUE 标识)的多行文本字段,将它们转换为 deployment.yaml,如下所示:

在 Rancher 对话框中: 在此处输入图像描述

在 deployment.yaml 中:

到目前为止,这工作正常。但现在的问题是:如果我的环境变量中有一个“=”(就像上面的 JAVA_OPTS 中一样),它会在该行的第二个“=”处拆分环境变量值:

JAVA_OPTS=-Xms1024m -Xmx2048m -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=512m

被翻译成

-Xms1024m -Xmx2048m -XX:MetaspaceSize

这里缺少“=256M -XX:MaxMetaspaceSize=512m”。

如何相应地更正我的 deployment.yaml 模板?

0 投票
1 回答
101 浏览

spring-boot - 使用 Helm 将 Spring Boot 微服务部署到 K8s

我们已经构建了一些微服务 (MS),这些微服务 (MS) 已部署到我们公司的 K8s 集群中。

对于当前的部署,我们的任何一个 MS 都将构建为 Docker 映像,并使用以下步骤手动部署;它工作正常:

  • 创建配置图
  • 安装 Service.yaml
  • 安装 Deployment.yaml
  • 安装 Ingress.yaml

我现在正在研究 Helm v3 以简化和封装这些部署。我已经阅读了很多 Helm v3 文档,但我仍然没有找到一些简单问题的答案,我希望在吸收整个文档以及GoSPRIG之前在这里得到答案,然后发现它不会t 符合我们的需要。

我们的 Spring MS 有 5 个单独的application.properties文件,它们特定于我们 5 个环境中的每一个。这些属性文件是简单的多行key=value格式,带有一些以#开头的注释。

使用helm create ,我在根目录中安装了一个名为./deploy的图表,它自动创建了./templatesvalues.yaml

问题是我需要访问Chart 的./deploy目录之外的application.properties文件。

从 helm 开始,我想在configmap.yaml的 Data: 部分中引用这两个文件。

  • ./src/main/resource/dev/application.properties
  • ./src/main/resources/logback.xml

我想保留这些文件的当前格式,而不是将它们重写为JSON/YAML格式。

Helm v3 允许这样做吗?

在此处输入图像描述