在特定端口上运行命令时,我以这种方式启动应用程序:
PORT=1234 node app.js
如何将端口传递给forever
命令?无论我尝试什么,似乎都不想工作。
我试过了:
forever start app.js 1234
forever start app.js PORT=1234
答案 0 :(得分:15)
PORT=1234 forever start app.js
答案 1 :(得分:2)
您可以尝试将export PORT=1234
添加到app.js
然后使用forever start app.js
答案 2 :(得分:1)
PORT=1234 forever start app.js
不幸的是,这对我不起作用,所以我尝试了一下,它起作用了:
forever start app.js --port 1234
答案 3 :(得分:0)
如果永久使用Node,则可以在根目录中创建一个forever.json文件,并在数组内的json文件中提及所有端口。示例:
Dim connector As Shape, src As Shape, aim As Shape
' add new connector (right-angle) to page
Set connector = Application.ActiveWindow.Page.Drop(Application.ConnectorToolDataObject, 0, 0)
' change Right-angle Connector to Curved Connector
connector.CellsSRC(visSectionObject, visRowShapeLayout, visSLOLineRouteExt).FormulaU = "2"
connector.CellsSRC(visSectionObject, visRowShapeLayout, visSLORouteStyle).FormulaU = "1"
Set src = Application.ActiveWindow.Page.Shapes.ItemFromID(4)
Set aim = Application.ActiveWindow.Page.Shapes.ItemFromID(2)
Dim vsoCell1 As Visio.Cell
Dim vsoCell2 As Visio.Cell
Set vsoCell1 = connector.CellsU("BeginX")
Set vsoCell2 = src.Cells("PinX")
vsoCell1.GlueTo vsoCell2
Set vsoCell1 = connector.CellsU("EndX")
Set vsoCell2 = aim.Cells("PinX")
vsoCell1.GlueTo vsoCell2
提供您的源目录和脚本(app.js / server.js)。
现在通过命令 forever start forever.json
在不同的端口中运行以上所有3个应用程序但是节点永远通过命令行将ip和端口传递给我们的程序。因此,要从process.argv获取值,我们需要最小化的node包。安装minimist,然后如下所示编写您的app.js,以通过命令动态提供ip和端口(永远自动执行此操作)。
[
{
"uid": "app1",
"append": true,
"watch": true,
"script": "server.js",
"sourceDir": "D:\\DEVELOPEMENT\\workshop",
"args": ["--port", "8081", "--ip", "127.0.0.1"]
},
{
"uid": "app2",
"append": true,
"watch": true,
"script": "server.js",
"sourceDir": "D:\\DEVELOPEMENT\\workshop" ,
"args": ["--port", "8082", "--ip", "127.0.0.1"]
},
{
"uid": "app3",
"append": true,
"watch": true,
"script": "server.js",
"sourceDir": "D:\\DEVELOPEMENT\\workshop" ,
"args": ["--port", "8083", "--ip", "127.0.0.1"]
}
]
现在运行 forever start forever.json ,并检查forever.json中描述的所有端口。