用了好几年的宝塔,不知道什么时候出了个pm2管理器,才开始以为它是对node版本切换管理的,直到今天看到有一篇文章才发现理解错了。研究了一下pm2的作用和用法,也顺便玩一玩宝塔中的pm2。
pm2官方文档:http://pm2.keymetrics.io/docs/usage/quick-start/
简单教程
首先需要安装pm2:
| |
运行:
| |
开机自动运行:
| |
开机自启:
| |
初次安装并运行,会有一个高大上的界面:

那么pm2与forever 相比,比较有哪些高大上的功能呢?我们看一下对比表格:
| Feature | Forever | PM2 |
|---|---|---|
| Keep Alive | ✔ | ✔ |
| Coffeescript | ✔ | |
| Log aggregation | ✔ | |
| API | ✔ | |
| Terminal monitoring | ✔ | |
| Clustering | ✔ | |
| JSON configuration | ✔ |
我们可以很直观的看出,pm2相比较Forever,功能更加强大一些。
查看运行状态
我们可以通过简单的命令查看应用的运行状态:
| |
效果如下:

ANodeBlog应用正在运行,pid为31480,并且占用内存为89.113 MB。
追踪资源运行情况
| |
会看到应用资源的实时运行情况

查看应用详细部署状态
如果我们想要查看一个应用详细的运行状态,比如ANodeBlog的状态,可以运行:
| |
“3"是指App Id。
结果如下:

查看日志
| |
系统会打印出详细的logs。
重启应用
| |
停止应用
想要终止应用,只需要运行:
| |
强健的API
在项目中运行:
| |
然后浏览器访问http://localhost:9615 你会有惊喜!
预定义运行配置文件
我们可以预定义一个配置文件,然后制定运行这个配置文件,比如我们定义一个文件process.json,内容如下:
| |
然后可以通过
| |
运行这个App。
总结
常用命令总结如下:
安装pm2
1npm install -g pm2启动应用
1pm2 start app.js列出所有应用
1pm2 list查看资源消耗
1pm2 monit查看某一个应用状态
1pm2 describe [app id]查看所有日志
1pm2 logs重启应用
1pm2 restart [app id]停止应用
1pm2 stop [app id]开启api访问
1pm2 web
更多pm2内容请参考官方文档:http://pm2.keymetrics.io/docs/usage/quick-start
宝塔中的pm2管理器使用方法
1、安装版本
windows默认支持3个版本(8.x/9.x/10.x),选择任意一个版本安装即可 安装时间可能会比较久,请耐心等待..

2、添加项目
如果添加项目后无法启动,可能是当前环境变量未生效,需要重启面板或者服务器后,重新添加项目

3、给项目绑定一个域名
如图点击映射,出现绑定域名窗口,绑定完成之后,可在网站管理查看到对应的网站
4、访问网站
浏览器输入刚刚绑定的域名如图:http://node.ffce.cn
至此第一个node.js搭建成功
5、添加模块
如果项目需要安装其他模块,则通过模块管理安装,如图我需要安装express

6、查看日志

测试js
在mac上安装bt
安装Docker
| |
在Docker里安装CentOS
Docker Hub:https://hub.docker.com/_/centos
| |
映射宝塔端口
创建一个CentOS容器并映射8888端口,复制返回的容器ID
| |

进入CentOS安装宝塔
进入容器终端
| |
__在CentOS中__执行宝塔安装命令
在宝塔论坛 中打开安装教程,找到最新的版本安装命令,像以下这样的命令。
| |
安装完成后,提示给的外网IP是用不了的,所以这里需要用本地ip访问面板

docker相关命令
列出正在运行的容器信息
| |
列出所有容器信息
| |
停止所有容器
| |
或者通过docker-compose安装
| |
3. 进入项目根目录
| |
4. 生成配置文件
| |
5. 启动宝塔镜像,在项目根目录下执行命令
| |
6. 查看默认登录信息
| |
如果自己修改过env中的端口配置,那么访问的时候就需要写自己修改的端口

比如我这里填的是18888,那我的访问地址就是 http://localhost:18888/63c795f5 ,后面的随机码可以用docker-compose logs app查看
