mirror of
https://github.com/nonebot/nonebot2.git
synced 2024-11-28 04:06:28 +08:00
📝 Add deployment document using PM2 (#853)
* Update deployment.md 重新提交 PM2 部署文档 * ♻️ 📝 Refactor PM2 deplotyment document * ✏️ Fix typo in PM2 deployment document * Update deployment.md fix 表述歧义 * 🚚 copy docs to next version Co-authored-by: Mix <32300164+mnixry@users.noreply.github.com> Co-authored-by: yanyongyu <42488585+yanyongyu@users.noreply.github.com>
This commit is contained in:
parent
505b4d46d0
commit
1e43b4df10
@ -227,4 +227,92 @@ stdout_logfile_maxbytes=2MB
|
||||
|
||||
## 使用 PM2 部署
|
||||
|
||||
<!-- TODO -->
|
||||
:::tip 提示
|
||||
在阅读这一节的过程中, 你总是可以参照 [PM2 官方文档](https://pm2.keymetrics.io/docs/usage/quick-start/) 来得到更多的信息
|
||||
:::
|
||||
|
||||
### 安装 PM2
|
||||
|
||||
需要有 NodeJS 10+环境来运行 PM2, ~~(什么 NTR)~~
|
||||
|
||||
然后通过以下命令安装即可:
|
||||
|
||||
```shell
|
||||
npm install -g pm2
|
||||
```
|
||||
|
||||
在安装完成后, 执行以下指令, 如果得到类似的输出则说明你安装成功了 PM2:
|
||||
|
||||
```shell
|
||||
$ pm2 -V
|
||||
5.2.0
|
||||
```
|
||||
|
||||
### 在后台运行进程
|
||||
|
||||
:::tip 提示
|
||||
以下步骤要求您在您 Bot 的工作目录下执行
|
||||
|
||||
如果您使用了虚拟环境, 请确保 Bot 启动命令能在虚拟环境中正常执行
|
||||
|
||||
换言之, Bot 程序需要在当前终端环境下正常运行
|
||||
:::
|
||||
|
||||
#### 启动 Bot 进程
|
||||
|
||||
```shell
|
||||
$ pm2 start "python -m nb_cli run" # 或者直接 nb run 也行
|
||||
|
||||
[PM2] Starting /usr/bin/bash in fork_mode (1 instance)
|
||||
[PM2] Done.
|
||||
┌─────┬────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
|
||||
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
|
||||
├─────┼────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
|
||||
│ 0 │ nb run │ default │ N/A │ fork │ 93061 │ 0s │ 0 │ online │ 0% │ 8.3mb │ mix │ disabled │
|
||||
└─────┴────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
|
||||
```
|
||||
|
||||
此时 Bot 进程就在后台运行了, 注意到表格第一列的 ID, 它可以用来查看和控制进程的状态
|
||||
|
||||
#### 常用命令
|
||||
|
||||
更具体的用法请移步 PM2 官方文档, ~~如果想要详细示例建议直接上手试试~~
|
||||
|
||||
其中命令中的所有`<id>`应该替换为上文启动进程后返回的 ID
|
||||
|
||||
- 查看最近 150 行日志
|
||||
|
||||
- `pm2 log <id> --lines 150`
|
||||
|
||||
- 实时监控所有进程日志
|
||||
|
||||
- `pm2 monit`
|
||||
|
||||
- 展示当前 PM2 管理的所有进程
|
||||
|
||||
- `pm2 ls`
|
||||
|
||||
- 停止某个进程
|
||||
|
||||
- `pm2 stop <id>`
|
||||
|
||||
- 删除某个进程
|
||||
|
||||
- `pm2 del <id>`
|
||||
|
||||
- 重启某个进程
|
||||
|
||||
- `pm2 restart <id>`
|
||||
|
||||
- 保存当前进程列表
|
||||
|
||||
- `pm2 save`
|
||||
|
||||
- 恢复保存的进程列表
|
||||
|
||||
- `pm2 resurrect`
|
||||
|
||||
- 设置开机自动启动进程列表
|
||||
- `pm2 startup`
|
||||
- 需要执行过 `pm2 save`
|
||||
如果不是 root 用户执行, 则需要手动添加指令返回的环境变量
|
||||
|
@ -227,4 +227,92 @@ stdout_logfile_maxbytes=2MB
|
||||
|
||||
## 使用 PM2 部署
|
||||
|
||||
<!-- TODO -->
|
||||
:::tip 提示
|
||||
在阅读这一节的过程中, 你总是可以参照 [PM2 官方文档](https://pm2.keymetrics.io/docs/usage/quick-start/) 来得到更多的信息
|
||||
:::
|
||||
|
||||
### 安装 PM2
|
||||
|
||||
需要有 NodeJS 10+环境来运行 PM2, ~~(什么 NTR)~~
|
||||
|
||||
然后通过以下命令安装即可:
|
||||
|
||||
```shell
|
||||
npm install -g pm2
|
||||
```
|
||||
|
||||
在安装完成后, 执行以下指令, 如果得到类似的输出则说明你安装成功了 PM2:
|
||||
|
||||
```shell
|
||||
$ pm2 -V
|
||||
5.2.0
|
||||
```
|
||||
|
||||
### 在后台运行进程
|
||||
|
||||
:::tip 提示
|
||||
以下步骤要求您在您 Bot 的工作目录下执行
|
||||
|
||||
如果您使用了虚拟环境, 请确保 Bot 启动命令能在虚拟环境中正常执行
|
||||
|
||||
换言之, Bot 程序需要在当前终端环境下正常运行
|
||||
:::
|
||||
|
||||
#### 启动 Bot 进程
|
||||
|
||||
```shell
|
||||
$ pm2 start "python -m nb_cli run" # 或者直接 nb run 也行
|
||||
|
||||
[PM2] Starting /usr/bin/bash in fork_mode (1 instance)
|
||||
[PM2] Done.
|
||||
┌─────┬────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
|
||||
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
|
||||
├─────┼────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
|
||||
│ 0 │ nb run │ default │ N/A │ fork │ 93061 │ 0s │ 0 │ online │ 0% │ 8.3mb │ mix │ disabled │
|
||||
└─────┴────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
|
||||
```
|
||||
|
||||
此时 Bot 进程就在后台运行了, 注意到表格第一列的 ID, 它可以用来查看和控制进程的状态
|
||||
|
||||
#### 常用命令
|
||||
|
||||
更具体的用法请移步 PM2 官方文档, ~~如果想要详细示例建议直接上手试试~~
|
||||
|
||||
其中命令中的所有`<id>`应该替换为上文启动进程后返回的 ID
|
||||
|
||||
- 查看最近 150 行日志
|
||||
|
||||
- `pm2 log <id> --lines 150`
|
||||
|
||||
- 实时监控所有进程日志
|
||||
|
||||
- `pm2 monit`
|
||||
|
||||
- 展示当前 PM2 管理的所有进程
|
||||
|
||||
- `pm2 ls`
|
||||
|
||||
- 停止某个进程
|
||||
|
||||
- `pm2 stop <id>`
|
||||
|
||||
- 删除某个进程
|
||||
|
||||
- `pm2 del <id>`
|
||||
|
||||
- 重启某个进程
|
||||
|
||||
- `pm2 restart <id>`
|
||||
|
||||
- 保存当前进程列表
|
||||
|
||||
- `pm2 save`
|
||||
|
||||
- 恢复保存的进程列表
|
||||
|
||||
- `pm2 resurrect`
|
||||
|
||||
- 设置开机自动启动进程列表
|
||||
- `pm2 startup`
|
||||
- 需要执行过 `pm2 save`
|
||||
如果不是 root 用户执行, 则需要手动添加指令返回的环境变量
|
||||
|
Loading…
Reference in New Issue
Block a user