快速上手
操作系统:支持 macOS,Linux
运行环境:建议选择 LTS 版本,最低要求 8.x
本节目标
Pandora.js 最基础的 procfile.js 文件编写。
了解 Pandora.js 最基础的 start, stop, dev, exit, list 命令
具体请移步 。
安装
Pandora.js 可以直接安装在应用程序中,也可以安装在全局。
Pandora.js 通过项目根目录下 定义应用进程结构,所以你需要在项目根目录下增加一个 procfile.js
文件。
我们这章介绍最简单的 Fork 和 Cluster 方式,下面介绍的两种模式你只需要任选其一。
Fork 方式
使用初始化命令自动生成:
$ pandora init ./app.js # app.js 是你的 Node.js 程序路径
❯ fork
cluster
** The procfile.js was auto generated to location /xx/xx/procfile.js **
然后你就会得到一个默认 procfile.js
你可以打开看一下,内容大致如下(隐去注释):
module.exports = (pandora) => {
pandora
.fork('appName', './app.js');
Cluster 方式
Cluster 方式是 Node.js Web Server 最常用的,我们默认会启动 CPU 数量的 Worker(不过你也可以改变这一默认值)。
使用初始化命令自动生成:
$ pandora init ./app.js # app.js 是你的 Node.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 **
然后你就会得到一个默认 procfile.js
你可以打开看一下,内容大致如下(隐去注释):
通过应用本身脚本启停
这种情况下, pandora 会进入应用的整个开发流程,一般情况下,我们会将 pandora 命令写到 scripts 段落中。
{
"scripts": {
"dev": "pandora dev",
"start": "pandora start",
}
}
npm run dev // 本地启动
npm run start // 线上启动
npm run stop // 线上停止
pandora start [--name xxx] [path]
比如当前在应用根目录,应用为 helloApp
。
第一个命令会以 package.json 中的 name 或目录最后一截作为应用名,这样,应用会按照 procfile.js 的定义默默启动,并在后台运行。
如果希望在前台启动(仅本地调试),可以使用 dev 命令。
pandora dev
当应用启动之后,可以通过 list 命令查看。
也可以将它停止运行。
pandora stop
因为 pandora 全局模式下一般在后台启动,所以最好是部署到服务器上才这么做。