Linux 下安装 pm2 并设置开机自启动服务
# 安装PM2
npm i -g pm2
1
# 启动PM2
# 启动服务
pm2 start xxx --name=xxxx
1
2
2
# 开机启动
# 把已启动服务加到systemd中
pm2 startup
# 保存脚本
pm2 save --force
1
2
3
4
2
3
4
关闭自启服务
pm2 unstartup
1
# 重启计算机
systemctl reboot
1
# 其他
生成配置 要生成示例配置文件,可以键入以下命令:
pm2 init simple
1
这将生成一个默认的配置文件 ecosystem.config.js
:
module.exports = {
apps : [{
name : "server1",
script : "./server.js"
}]
}
1
2
3
4
5
6
2
3
4
5
6
如果正在创建自己的配置文件,请确保它以 .config.js
结尾,以便 PM2
能够将其识别为配置文件。
使用配置文件 与操作应用程序相比,我们可以无缝启动/停止/重启/删除配置文件中包含的所有应用程序:
# 启动所有的应用程序
$ pm2 start ecosystem.config.js
# 停止所有应用程序
$ pm2 stop ecosystem.config.js
# 重启所有应用程序
$ pm2 restart ecosystem.config.js
# 重载所有应用程序
$ pm2 reload ecosystem.config.js
# 删除所有应用程序
$ pm2 delete ecosystem.config.js
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
应用于特定的应用程序 我们还可以通过使用选项 `--only <app_name>`` 指定应用程序名称对特定应用程序进行操作:
$ pm2 start ecosystem.config.js --only api-app
1
注意
--only
选项也适用于启动/重启/停止/删除
甚至可以通过指定用逗号分隔的每个应用程序名称来指定要对其执行操作的多个应用程序:
$ pm2 start ecosystem.config.js --only "api-app,worker-app"
1
切换环境
可以通过 env_*
选项指定不同的环境变量集。示例:
module.exports = {
apps : [{
name : "app1",
script : "./app.js",
env_production: {
NODE_ENV: "production"
},
env_development: {
NODE_ENV: "development"
}
}]
}
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
现在要在不同环境中的变量之间切换,请指定 --env [env name]
选项:
$ pm2 start process.json --env production
$ pm2 restart process.json --env development
1
2
2
上次更新: 2024/05/29, 17:27:32
- 01
- linux 在没有 sudo 权限下安装 Ollama 框架12-23
- 02
- Express 与 vue3 使用 sse 实现消息推送(长连接)12-20