PM2是node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,而且使用非常简单。
Link
优势
- 无需通过手工或是ftp的方式把本地代码拷贝到服务器上
- 无需手工启动或是重启远程服务器的Node服务
- 项目的升级及迭代非常方便
- 具有负载均衡功能
前提
-
购买阿里云服务器,生成CentOS7.x的系统
-
在CentOS7.x中安装必要的软件 Node、MongoDB、Apache、MySQL、FTPServer…
可参考文档
-
本地和服务器安装pm2全局包
-
对阿里云服务器的安全组规则进行配置
-
要把代码发布到在线的Git仓库,比如Github或是码云
-
在自己服务器配置好Git仓库的SSH Key
基本指令
可参考 文档
# 启动
$ pm2 start xxx
# 停止
$ pm2 stop xxx
# 重启
$ pm2 restart xxx
# 查看列表
$ pm2 list
基本使用
-
将本地代码发布到Git远程仓库(Github、码云)。
-
在阿里云服务器(CentOS)上生成SSH Key 并且将公钥设置到Github后台,方便拉取代码到CentOS服务器。
服务器记得安装git
$ yum install -y git
-
在本地及服务器上面安装 pm2。
$ npm i pm2 -g
-
使用pm2 init生成pm2的配置文件。
可参考文档
主要更改内容:
- apps下面的 name、script 等配置项目
- deploy 下面的user、host、repo、path
-
切换到本地项目根目录,运行 部署 指令即可
可参考文档
$ pm2 deploy production setup $ pm2 deploy production
-
代码更新&迭代,切换到本地项目根目录,运行执行指令
$ pm2 deploy production update # 在做这个之前,必须先把代码发布到Github
完
本文首次发布于 Azr的博客, 作者 @azrrrrr ,转载请保留原文链接.
原文链接: http://amor9.cn/2018/12/07/pm2/