values.yaml 文件中的配置来动态决定 ConfigMap 的 data 字段内容。

news/2025/3/28 12:53:30/文章来源:https://www.cnblogs.com/exmyth/p/18791614
在 Helm Chart 中,可以通过 values.yaml 文件中的配置来动态决定 ConfigMapdata 字段内容。以下是实现方法:

修改 values.yaml 文件

values.yaml 文件中添加一个字段,用于指定要使用的配置路径。例如:
yaml复制
confPath: "env/conf"
或者
yaml复制
confPath: "tee/conf"

修改 ConfigMap 的模板文件

在 ConfigMap 的模板文件中,使用 {{ .Values.confPath }} 来动态拼接路径。修改后的模板文件如下:
yaml复制
apiVersion: v1
kind: ConfigMap
metadata:name: {{ .Values.nameOverride }}
data:
{{ (.Files.Glob (printf "%s/*conf" .Values.confPath)).AsConfig | indent 2 }}

解释

  1. {{ .Values.confPath }}:从 values.yaml 文件中获取 confPath 的值。
  2. (printf "%s/*conf" .Values.confPath):将 confPath 的值拼接到路径模式中,例如 "env/conf/*conf""tee/conf/*conf"
  3. (.Files.Glob (printf "%s/*conf" .Values.confPath)).AsConfig:根据拼接后的路径模式,获取对应的文件内容并转换为 ConfigMap 的数据格式。
  4. | indent 2:对生成的内容进行缩进,以符合 YAML 的格式要求。

使用示例

values.yaml 文件

yaml复制
nameOverride: my-configmap
confPath: "env/conf"

ConfigMap 模板文件

yaml复制
apiVersion: v1
kind: ConfigMap
metadata:name: {{ .Values.nameOverride }}
data:
{{ (.Files.Glob (printf "%s/*conf" .Values.confPath)).AsConfig | indent 2 }}

文件结构

复制
my-chart/
├── Chart.yaml
├── values.yaml
├── templates/
│   └── configmap.yaml
└── env/└── conf/└── example.conf
└── tee/└── conf/└── example.conf

部署时的命令

bash复制
helm install my-release ./my-chart
 
 

🔍 搜一下再回答

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/905494.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker环境搭建与容器化入门实战——从虚拟机配置到应用部署

作者信息 姓名:林俊祥 专业:云计算技术应用 学号:23593107 技术方向:云平台搭建与部署 一、项目背景 本次实践基于Ubuntu系统,通过虚拟机环境完成Docker的完整部署流程,涵盖: 虚拟机创建与系统安装 SSH远程连接配置 Docker引擎安装与容器管理 应用容器化实战三、关键技术…

Vibe Coding彻底火了,到底什么是氛围编程?它如何改变未来的软件开发?

在过去十年间,低代码/无代码平台和 AI 代码助手持续冲击着软件开发行业。如今,一种被称为 Vibe Coding 的新兴实践突然走红,甚至颠覆了人们对"程序员到底在做什么"的认知。本篇文章将从定义到实践策略、从优势到局限性,全方位探讨 Vibe Coding 给软件开发带来的重…

知识蒸馏实战

蒸馏实战小实验 本实验相关代码已开源至github 失败经历 爱爱医数据蒸馏Qwen2.5-7B 1.用爬虫在爱爱医网站爬取1k条数据。(刚学一点爬虫,不会越过验证码,还是自己一次一次验证😅) 2.数据格式预处理,例如: {"instruction": "你需要基于我提供的患者病历,…

VLM-R1环境搭建推理测试

引子 前文也写了DeepSeek R1模型的安装测试,感兴趣的童鞋移步(https://blog.csdn.net/zzq1989_/article/details/145400876?spm=1001.2014.3001.5502)。那么在多模态方面R1方法(GRPO,Group Relative Policy Optimization)能不能用呢?毫无疑问,已经有不少人在尝试了。今…

振弦采集读数仪 智能型 支持振弦、温度、电压、电流测量,无线传输 自动化操作 适用地质灾害与土木工程监测

振弦采集读数仪 智能型 支持振弦、温度、电压、电流测量,无线传输 自动化操作 适用地质灾害与土木工程监测VH03 型多功能读数仪是一款专为多类型传感器设计的手持式读数设备,主要用于单弦式振弦传感器的测量,同时支持电压、电流传感器的辅助测量。设备采用高性能 32 位 ARM …

GoWebDAV,随时随地访问windows电脑上的文件

GoWebDAV使用 WebDAV 分享本地文件,轻量、易于使用English | 简体中文特性基于 Golang 实现,性能高。最终编译为单二进制文件,不需要 Apache 等环境,依赖少。支持浏览器访问。可以在同个端口下启用多个 WebDAV 服务,各自有不同的挂载目录、用户名密码。良好的 Docker 支持…

WPF MVVM入门系列教程(命令)

WPF中的命令模型 在WPF中,我们可以使用事件来响应鼠标和键盘动作。但使用事件会具备一定的局限性,例如:我想通过键盘快捷键触发事件、或者在某个时刻禁用事件。如果使用代码去编写这些控制逻辑,会变得非常枯燥。因此WPF提供了命令模型。 命令具有多个用途。 第一个用途是分…

【读文总结】transformers circuits 随笔

【读文总结】transformers circuits 随笔内容有点太多,先截图一份 contents对 transformers 结构的重刻划 一种常见的 decoder only 的 transformer 结构如下。但是我们可以把这个 residual stream 的线抻直,将这个过程视为 transformer layer 对 residual stream 中所包含的…

vue+leaflet示例:结合geoserver实现地图空间查询(附源码下载)

demo源码运行环境以及配置运行环境:依赖Node安装环境,demo本地Node版本:14.19.1。 运行工具:vscode或者其他工具。 配置方式:下载demo源码,vscode打开,然后顺序执行以下命令: (1)下载demo环境依赖包命令:npm i (2)启动demo命令:npm run dev (3)打包demo命令: n…

tinygo window安装和使用

支持的型号https://tinygo.org/docs/reference/microcontrollers/ 下载win版本https://github.com/tinygo-org/tinygo/releases 新建环境变量D:\Program_Files\tinygo\bin 验证tinygo version 在 VSCode 中创建一个新的文件,命名为 hello.gopackage main import "fmt&q…

基于ARM微处理器的无线串口集线器的总体设计

1 引言 随着21世纪科学技术的不断进步,无线与移动通信相应得到了迅猛的发展。方便快捷的无线接入和无线 互连等新概念和新产品,已逐渐融入人们的工作领域和日常生活中。由于如今对无线频率的大量使用,使无线频率资源日渐匮乏,短距离宽带无线通信技术受到世界许多国家工业界…

Pycharm中配置基于深度学习模型Yolov5的入门车辆识别Python项目

基于Yolov5的入门车辆识别 环境部署 ANACONDA环境 Anaconda官网下载:https://www.anaconda.com/download/ 进入会显示需要注册,直接跳过即可选择对应的系统版本下载安装注意选择安装位置(建议不要安装在C盘)没什么其他特别选项,直接安装即可 安装完成后使用win+r输入cmd打…