我需要运行一组节点js文件,其中包含配置信息,其中必须运行端口号和IP地址然后使用forever in node.js我需要在终端中使用配置运行脚本有任何手动输入。
答案 0 :(得分:3)
对于程序化方法,您可以使用Forever-Moniter
var forever = require('forever-monitor'); var child = new (forever.Monitor)('your-filename.js', { max: 3, silent: true, options: [] }); child.on('exit', function () { console.log('your-filename.js has exited after 3 restarts'); }); child.start();
答案 1 :(得分:2)
您可以使用child_process模块。查看文档,其中包含一些有用的信息:http://nodejs.org/api/child_process.html
举一个简短的例子
var exec = require('child_process').exec;
exec('forever', function callback(error, stdout, stderr){
// cb
});
如果您不需要回电/不想等待执行:
var exec = require('child_process').exec('forever').unref();
这有用吗?
最佳马克
编辑:好的,不确定我是否真的明白你的问题,但我的回答与https://stackoverflow.com/a/23871739/823851结合可能会提供一个很好的解决方案。
答案 2 :(得分:0)
用法:
答案 3 :(得分:-2)
node-config是一个很好的模块,用于管理Node.js应用程序的不同配置。
例如,要制作“生产”配置,/config/production.json
将包含:
{
"port" : "3000",
"ip" : "192.168.1.1"
}
在您的一个节点应用程序JS文件中:
config = require('config')
....
var port = config.port;
var ip = config.ip;
要在此配置中启动应用程序,只需在运行应用程序之前首先将shell中的NODE_ENV设置为生产。
export NODE_ENV=production
forever start app.js
根据需要为每个环境创建其他配置JSON文件。未指定环境时使用default.json
。