centos7上搭建nvm且让nodejs在后台运行

做了一个非常简单的nodejs的项目,想挂在centos上,但是每次启动服务之后再关闭掉会话窗口,nodejs服务也会跟着挂掉,所以就想着如何能让nodejs服务在后台一直运行。文章前面写了安装nvm来管理nodejs,后半部分是通过pm2来管理nodejs应用进程。

搭建nvm

我们可以首先在centos上安装nvm,再通过nvm来管理nodejs。
可以通过以下命令来下载nvm:
wget https://codeload.github.com/creationix/nvm/zip/master
会下载到一个名字为master的压缩文件,接着把这个文件解压出来:
unzip master
会发现当前目录多了一个nvm-master的文件夹
进入文件夹:cd nvm-master
安装nvm:./install.sh
安装成功后,需要把nvm加入系统环境变量中:
source ~/.bashrc
最后查看是否安装成功:
nvm --version
可以看到我现在安装的是0.34.0版本的
nvm version
可以通过nvm list-remote命令来查看有哪些版本的nodejs
8.15.0
输入 nvm install 8.15.0来下载稳定版的nodejs
nodejs8.15.0
下载成功并且自动use了。
通过nvm use 版本号来切换nodejs的版本:
nvm use 10.15.0
切换到10.15.0版本的nodejs。

接下来就是把写好的nodejs项目上传到centos上。
**

nodejs服务在关闭会话窗口后依然运行

**
我们在运行一个nodejs的http创建的服务器后,如果中断这个命令,或者关闭当前会话窗口,都会使得服务器停止运行,在浏览器中输入地址也没有意义了,我们也不能一直开着这个窗口,所以得需要一些其他的模块的帮助,来让nodejs开启的服务器后台运行或者关闭窗口后依然运行。

通过第三方模块pm2管理nodejs进程
需要先把它安装在全局:npm i pm2 -g
进入项目文件夹, 我的文件名是routers.js,所以:
pm2 start node routers.js 来启动服务器。
pm2 start
启动成功,这个时候服务器进入了后台进程中,关闭窗口或者执行其他命令都不会受影响,在浏览器输入ip:port可以看到服务器依然在运行。
可以通过pm2 list命令来查看有哪些nodejs的进程在运行,然后用pm2 stop +App name来停止这个进程。

除了pm2还有forever模块,可以看做是nodejs的守护进程,可以启动,停止和重启app应用,也可以配置监听,没用过所以就不做介绍了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值