最近使用NodeJS作为程序研发后台,NodeJS开机启动在linux下稳定快速,但在windows下如何开机启动?
pm2是一个用于node.js/io.js的进程管理工具,主要采用pm2管理后台。PM2在Linux等平台下可以设置开机自动启动,但windows下貌似不行,因此,借用
pm2-windows-service。
(本文主要参考如下博文:
http://baijiahao.baidu.com/s?id=1579113463484991587&wfr=spider&for=pc;
https://blog.csdn.net/xiejiashu/article/details/73379043)
所有命令以管理员身份运行,包括pm2设置开机启动我们自己的服务程序,否则会出现一些问题(比如pm2 status就会出错)。
一、安装pm2
npm i -g pm2
pm2是主要的nodejs进程管理的服务,具体操作及功能请参见官网。
主要如下:
检测是否正确安装pm2
pm2 status //是否有表格输出
删除pm2
npm remove pm2 -g
利用pm2启动一个项目
普通启动(fork模式,无法处理并发)
pm2 start app.js
集群启动(cluster模式,可处理并发)
pm2 start app.js -i 0
pm2启动项目进阶
添加项目别名,pm2 list 命令时的项目名为别名,否则为所启动js的文件名
pm2 start app.js -i 0 --name "项目别名"
pm2启动IDEA构建的express项目
pm2 start bin/www -i 0 --name "Exp-Demo"
查看pm2中的项目运行状态
pm2 l
pm2 list
pm2 status
以上三个命令效果一样
控制台会以表格形式列出当前pm2挂着的所有项目(无论是否运行中)
表格中会返回项目对应的项目Id(项目Id在其它命令中有用)
查看某个项目的日志
pm2 logs 项目别名或项目Id
例子:pm2 logs Exp-Demo
重启项目
重启某个项目
pm2 restart 项目Id
重启所有项目
pm2 restart all
配置项目自启动
1.初始化启动项
pm2 startup 平台
例子:pm2 startup ubuntu
2.保存配置
pm2 save
3.启动项目
4.保存配置
5.创建脚本
pm2 startup upstart
6.保存配置
7.重启系统
reboot
//以上过程可能会有过多的保存配置,其实有一些是可以忽略的,但是为了不让部分配置偶然失效,所以每一个操作步骤后都建议保存一次。
弹出一个高大上的监控台
//可监控项目状态、日志,等信息
pm2 monit
二、安装并配置pm2-windows-service
npm i -g pm2-windows-service
三、开始制作windows开机启动
1、添加系统环境变量
PM2_HOME=D:\.pm2(自己保持PM2配置的路径);
在windows下设置方法如下:右键 [我的电脑] - [属性] - [高级系统设置] - [环境变量] - 新建 [系统变量]
2、以管理员权限打开新的命令行窗口,执行以下命令来安装服务
pm2-service-install
提示Perform environment setup ? 选 n, 继续
此时, PM2服务已安装成功并已启动, 可以通过 [win + r] - [services.msc] 来查看,服务名称为PM2
3、pm2设置开机启动我们自己的服务程序(app.js或bin\www)
管理员身份到NODEJS服务程序目录,运行如下命令:
pm2 start app.js(或bin\www等主程序) --name myapp(别名)
pm2 l
pm2 save
pm2 save 很重要, 它保存当前pm2 正在管理的NodeJS服务, 并在开机后恢复这些服务,保存路径为系统环境变量设置的PM2_HOME路径。
至此,开机自动启动完成。
4、卸载
pm2-service-uninstall
热门工具 换一换