在kubesphere中将ConfigMap挂载到容器详细教程——实现以文件的形式加载配置文件

用途

有可能你的项目的配置文件并没有开放或公开,需要在应用上线的时候配置。除了通过将配置字典设置为容器的环境变量外(这是最省事的方法),还可以将配置字典挂载进去,这相当于还是以文件的形式来加载配置文件,而不是设置环境变量。通过将配置字典的内容与你的空配置文件替换,即可实现项目在上线时加载正确的配置。

步骤

首先在你的kubesphere工作台点击配置字典:

点击创建:

根据实际情况命名后,点击下一步:

根据你的需要命名键,其实可以比较随意,值就放你的配置文件内容即可。勾选√后点击创建即可。

然后就新建相应的工作负载,在存储设置的界面点击挂载配置字典或保密字典。

导入刚才的配置字典,设为只读,路径填写你想要将配置文件挂载到容器里的路径,例如/app/.env,也就是说,通过挂载后,你的配置字典会变成一个叫.env的文件,路径为/app/.env,如果容器该路径里原本就有该文件,那么会进行替换,这就完成了线上环境配置的置换。

字段名称 填写内容
ConfigMap test
KeyToPath : Key .env
KeyToPath : 子路径 .env
挂载到容器 只读
挂载到容器 : 挂载到容器内路径 /app/.env
挂载到容器 : 子路径 .env

容器运行后,进入容器的终端,输入命令:cat /app/.env即可验证是否替换成功。

ps:保密字典操作类似。

相关推荐
运维开发故事7 天前
基于 Arthas 的多集群在线诊断系统设计与实现
kubernetes
Patrick_Wilson9 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
探索云原生9 天前
K8s 1.36 这个 GA 特性,把 initContainer 拉模型的 hack 干掉了
ai·云原生·kubernetes
Java之美10 天前
一次k8s升级引发的DevicePlugin注册失败
云原生·kubernetes
java_cj17 天前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes
qq_4523962317 天前
第十三篇:《K8s 安全基础:RBAC、ServiceAccount、Pod Security》
java·安全·kubernetes
睡不醒男孩03082317 天前
云原生运维实战:高并发架构下的云原生可观测性、韧性降级与自动化干预体系
数据库·kubernetes·高并发·prometheus·devops·sre·缓存调优
qq_4523962317 天前
第十四篇:《K8s 网络模型与 CNI 插件(Calico、Flannel、Cilium)》
网络·kubernetes·php
Hadoop_Liang17 天前
Kubernetes 应用 HTTPS 安全访问配置实践
https·kubernetes