【发布时间】:2021-03-02 02:03:03
【问题描述】:
我正在尝试找到一种方法将配置设置输入到容器中运行的 SPA 应用程序中。
我目前的计划是将配置作为环境变量传入。然后在容器启动时,从这些环境变量生成一个 json 文件以传递给浏览器(连同 SPA 应用程序)。
我打算像这样格式化我的环境变量:
环境变量名称:安全性:ClientId 环境变量值:123456 环境变量名称:安全性:clientSecret 环境变量值:abcdefg 环境变量名称:AppSettings:Environment 环境变量值:Dev这将转换为:
{
"AppSettings": {
"Environment": "Dev",
},
"Security": {
"ClientId": "123456",
"ClientSecret": "abcdefg"
}
}
我在 shell 脚本方面相当缺乏经验,但这必须在 shell 脚本中完成,以便它可以在 Linux 容器中运行。
我读过jq,它似乎是在shell 脚本中与Json 文件交互的方式。但他们似乎都希望你从一个现有的 json 文件开始,然后将其转换为不同的 json 文件。
如何从键值对列表中创建一个新的 json 文件,其中包含子部分并使用 jq(或 shell 脚本中的其他内容)?
【问题讨论】: