庚子年新冠火毒猖獗。响国之号,遂闭门研习mqtt,搭建NodeRed,然其不可自始于开机,故余始于焦头烂额而后得其解,遂有此记。
问题分析:
实际上Nodered也是个nodejs的进程,所以只需要采用nodejs的pm2进程管理工具就可以让Nodered开机自启。啥是pm2自己百度,不废话。
解决方法:
安装pm2:
npm install pm2 -gd
使用PM2启动Node-red:
pm2 start node-red
查看下启动项列表:
pm2 ls
如果加载成功会显示类似下面的内容:
root@:~# pm2 ls
┌─────┬─────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ? │ status │ cpu │ mem │ user │ watching │
├─────┼─────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 0 │ node-red │ default │ N/A │ fork │ 3772 │ 22h │ 1 │ online │ 0.2% │ 123.3mb │ root │ disabled │
└─────┴─────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
设置pm2为自启进程:
sudo pm2 startup
注:这个命令执行后,系统会创建启动脚本,在Ubuntu18.04上是会自动添加软链接的,如果是别的版本,可能就需要你按照提示输出的命令去执行。 其它的版本可能会输出一些命令,按照提示复制到bash输入并回车就可以了,这一步其实就是添加一个系统自启服务。
保存pm2修改内容:
sudo pm2 save
如果你会跟牛逼的玩意了不需要nodered这种只有我们不懂前软后端的娃娃才用的东西的时候,Ok直接在pm2里面关闭nodered的自启功能。
删除进程:
pm2 delete nodered
最后最后!武汉加油!加油亲爱的达瓦里氏们!