带有动态变量的JSON(配置文件)

时间:2015-08-02 04:26:12

标签: json node.js docker config

我正在使用名为“db-migrate”的节点包,它使用database.json文件作为数据库配置。问题是我们开始使用Docker并且我想将值设置为具有回退的环境变量 - 例如:

{
 ...
 "host": process.env.DBHOST || 'localhost',
 ...
}

但是如何使用静态json文件呢? 我想使用类似于erb文件的东西与模板生成的动态能力。

1 个答案:

答案 0 :(得分:0)

根据我的理解,更好的想法是创建一个像config.js这样的全局配置文件,并将您的配置设置为

module.exports = {
    // APP SETTINGS
   ...
   "host": process.env.DBHOST || 'localhost',
   "port": process.env.DBPORT || '8080',
   ...
}; 

执行此操作后,您可以随时轻松访问此文件。 对于例如如果您想在app.js文件中访问这些配置,只需在app.js文件中添加一行即可将其包含在内

var config = require('./config');

这将使config命名空间下的值可用,并且可以将这些值访问为:

config.host or config.port

希望答案能说出你的想法...... 如果你的意图是别的,那么请评论..