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

用途

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

步骤

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

点击创建:

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

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

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

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

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

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

ps:保密字典操作类似。

相关推荐
小小克1 小时前
k8s控制器管理
云原生·容器·kubernetes
程序猿阿越1 小时前
kubelet源码阅读
后端·kubernetes·源码阅读
名字还没想好☜4 小时前
kubectl 排障实战:jsonpath 精准取值、custom-columns、events 排序与 top 速查
运维·前端·chrome·docker·kubernetes
大明二代6 小时前
使用 Traefik、cert-manager 和 DNS-01 为内网 Kubernetes 服务配置 HTTPS
git·kubernetes·flux
再卷还是菜8 小时前
Kubernetes(k8s) 控制器的详细介绍与总结
笔记·学习·kubernetes
tx112087635818 小时前
K8S-pod管理与控制器管理
linux·运维·kubernetes·pod
μθημα20 小时前
Kubernetes 集群部署实操:从 Harbor 私有仓库到三节点集群搭建
云原生·容器·kubernetes
苍狗T1 天前
k8s 控制器管理
linux·运维·云原生·容器·kubernetes
名字还没想好☜1 天前
Prometheus 告警实战:写 alerting rules、用 Alertmanager 做路由分组与抑制
运维·前端·javascript·docker·kubernetes·prometheus
qq_349447951 天前
K8S Helm安装
云原生·容器·kubernetes