命令行介绍
Pandora.js 提供了一些常用的命令行,比如:
- init
- start
- stop
- restart
- list
- log
- ps
- exit
- dev
初始化一个 Pandora.js 项目
pandora init <filePath> --name customName
快速生成 procfile.js
。
<filePath>
必选,快速生成的入口文件。--name
可选,fork 模式的进程名。
举例:
$ pandora init ./app.js
? Which type do you like to generate ? (Use arrow keys)
❯ fork
cluster
** The procfile.js was auto generated to location /xx/xx/procfile.js **
start 启动应用
pandora start [path] --name urAppName --env="NODE_ENV=production" --node-args="--expose-gc"
最常用的启动命令,用于启动一个新的应用。
[path]
可选,启动的目标路径,默认为当前目录。--name=urAppName
可选,用于指定应用名,默认为当前目录中 package.json 的 name ,或当前目录名。--env="NODE_ENV=production"
可选,指定启动应用的环境变量,应用可以通过process.env
获得。--node-args="--expose-gc"
可选,指定应用启动的 Node.js 参数。--args="--a=b"
给应用程序的参数。
举例:
# 当前目录为 /home/admin/mytaobao/target/mytaobao (假设没有 package.json 中的 name)
pandora start # 启动 mytaobao 应用,类似 --name=mytaobao
pandora start . --name mytaobao # 同上
pandora start `pwd` # 同上
stop 停止应用
注意:只有 start 命令启动的应用才可以 stop
pandora stop [appName]
停止一个应用。
[appName]
可选,用于指定应用名,默认为当前目录中 package.json 的 name ,或当前目录名。
举例:
pandora stop mytaobao # mytaobao 为之前定义的名字,如果没有指定 name ,和 start 一样自动获得 name
restart 重启应用
pandora restart [appName]
重启一个应用,先停止运行,再按原配置启动。
[appName]
可选,用于指定应用名,默认为当前目录中 package.json 的 name ,或当前目录名。
举例:
pandora restart mytaobao // mytaobao 为之前定义的名字,如果没有指定 name ,和 start 一样自动获得 name
list 列出所有运行的应用
注意:dev 命令不会启动 Daemon 进程,list 等命令无法查看到应用信息
pandora list
列出应用列表,示例如下:
log 查看日志
pandora log [appName] --follow --lines --full --daemon
[appName]
可选,用于指定应用名,默认为当前目录中 package.json 的 name ,或当前目录名。--follow
可选,亦作-f
,类似tail -f
。--lines
可选,亦作-l
,输出最后多少行,默认为 50 行。--full
可选,输出全部日志。--daemon
可选,输出 Daemon 的日志。
ps 查看进程树
pandora ps <appName>
<appName>
必选,应用名。
exit 退出 Pandora.js
将 pandora 进程彻底退出,同时停止所有正在运行的应用
pandora exit
dev 前台启动应用
注意:dev 命令不会启动 Daemon 进程,list 等命令无法查看到应用信息
pandora dev [path] --name urAppName --env="NODE_ENV=production" --node-args="--expose-gc"
不启动 Daemon 直接前台启动应用,日志直接输出控制台。多用于本地调试,参数同 start。
[path]
可选,启动的目标路径,默认为当前目录。--name=urAppName
可选,用于指定应用名,默认为当前目录中 package.json 的 name ,或当前目录名。--env="NODE_ENV=production"
可选,指定启动应用的环境变量,应用可以通过process.env
获得。--node-args="--expose-gc"
可选,指定应用启动的 Node.js 参数。--args="--a=b"
给应用程序的参数。