2017-05-27 82 views
1

如果我手動運行我的node-express站點,它的效果很好。ubuntu pm2命令運行node-express站點

sudo node bin/www

但我的其他站點發起,並通過PM2產卵。

隨着PM2我剛剛安裝的節點啓動site.js文件和可執行文件,只需要運行./site.js 所以PM2只具有運行./site.js

但是,這是我曾經嘗試過運行的第一個節點快遞網站使用pm2。

所以我沒有得到的是如何使它,所以pm2可以運行命令node bin/www

我試過使bin/www文件成爲可執行文件。它在文件#!/usr/bin/env node中具有相同的第一行但pm2不會運行它。當我嘗試pm2回聲 - 幫助控制檯,因爲它無法解釋命令sudo pm2 node bin/www

如何讓pm2運行這樣的命令?

回答

1

我建議在您的項目中添加process file。下面是一些超基本只給你一個想法......

// -- bin/www/ecosystem.config.js 
module.exports = { 
    apps: [{ 
    name: 'app', 
    script: 'site.js' 
    }] 
}; 

然後你可以運行sudo pm2 start bin/www/ecosystem.config.js。當然,你會發現擁有這個專用的配置資源,以便稍後也可以用來調整任何東西。

+0

我喜歡這個。只是一些事情。 'www'是bin文件夾中的一個文件。它是文件節點-express用於配置站點,然後啓動父文件夾中的app.js文件到'bin'。要運行'node bin \ www'我必須在父文件夾中; app.js駐留在哪裏。 'bin \ www'就是你的app.set('port',...)&app.listen(); app = require('.../app');' – user5903880

+0

因此,如果我創建一個進程文件,它將是父文件夾中的'site.config.js'?然後'腳本:'會指向'bin \ www'? – user5903880

+0

哇。真正擊球100.執行'sudo pm2生態系統'返回'命令不被識別' – user5903880