安装Pandora
npm i pandora -g // 安装在全局
npm i pandora --save // 安装在应用
首先全局需要安装,安装完成之后可以使用pandora
命令,如下:
$ pandora --help
pandora <command>
Commands:
pandora init <filePath> Init a Pandora.js project
pandora start [targetPath] Start an application
pandora stop [appName] Stop an application
pandora restart [appName] Restart a running application
pandora reload <appName> Reload an application
pandora log [appName] Show logs of an application
pandora pid <appName> Get the PID of a running application
pandora ps <appName> Get a tree composed of
pandora list List all applications
pandora dev [targetPath] Debug an application
pandora exit Stop all applications and exit the pandora daemon process
Options:
--help Show help [boolean]
-v, --version Show version number
创建Egg测试项目
$ npm i egg-init -g //如果没有安装过 egg-init 需要安装
$ egg-init pandora-demo --type=simple
安装 egg-pandora-script
npm i egg-pandora-script
创建procfile.js
procfile.js文件是pandora默认读取的启动配置文件,位于项目的根目录下,可以使用pandora init
命令直接创建,但是对于egg应用需要手动创建,然后将下面的代码copy进去:
const path = require('path');
const utility = require('utility');
const pkgPath = path.join(__dirname,'package.json');
const pkg = utility.readJSONSync(pkgPath);
const eggPandoraPath = path.join(__dirname,'node_modules/egg-pandora-script/index.js');
module.exports = (pandora) => {
pandora
.fork(pkg.name,eggPandoraPath)
}
可视化控制面板 -- Pandora-Dashboard
$ npm i pandora-dashboard -g # 全局安装,会全局注册一个命令 pandora-dashboard-dir
$ pandora start --name dashboard `pandora-dashboard-dir` # 使用该命令获得路径,用于启动
启动应用
切换命令行到项目根目录(也就是procfile所在目录),然后执行pandora start
启动应用,这里也可以将package.json
中原来的egg-script start
改成pandora start
然后用npm start
, 效果是一样的。
查看应用
我们可以用 pandora log <项目名>
来查看日志, 可以使用 pandora list
来查看所有启动的应用:
当然使用Pandora-Dashboard才是最直观的,下面截取部分图片: home page of dashboad application logs process info
这里只是快速的说明了egg应用如何的接入,还有很多的参数配置都没有仔细的研究,但是相信很多人跟我一样看待这样的面板就觉得棒极了,尤其是看到多进程的性能数据面板。