掘金 后端 ( ) • 2024-03-14 12:54

theme: channing-cyan

用途

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

步骤

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

点击创建: image-20240314114057426

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

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

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

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

image-20240314115121609

image-20240314115129841

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

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

ps:保密字典操作类似。