📜  如何将 node.js 应用程序作为后台服务运行?(1)

📅  最后修改于: 2023-12-03 14:53:02.218000             🧑  作者: Mango

如何将 node.js 应用程序作为后台服务运行?

在实际开发中,我们常常需要将 node.js 应用程序作为后台服务运行,以保证应用的稳定性和持续性。在本文中,我们将介绍如何将 node.js 应用程序作为后台服务运行。

使用 pm2

pm2 是一个流行的 node.js 进程管理器,它可以帮助我们管理 node.js 应用程序,并将其作为后台服务运行。

安装 pm2

你可以通过 NPM 来安装 pm2,具体命令如下:

npm install pm2 -g
启动应用程序

启动应用程序非常简单,你只需要在应用程序根目录运行以下命令即可:

pm2 start app.js

其中,app.js 是你的应用程序主文件名。

停止应用程序

停止应用程序同样很简单,你只需要运行以下命令即可:

pm2 stop app

其中,app 是你的应用程序名称,你可以通过运行以下命令获取应用程序名称:

pm2 list
重启应用程序

重启应用程序同样很简单,你只需要运行以下命令即可:

pm2 restart app

其中,app 是你的应用程序名称。

使用 forever

forever 是另一个流行的 node.js 进程管理器,它可以帮助我们管理 node.js 应用程序,并将其作为后台服务运行。

安装 forever

你可以通过 NPM 来安装 forever,具体命令如下:

npm install forever -g
启动应用程序

启动应用程序非常简单,你只需要在应用程序根目录运行以下命令即可:

forever start app.js

其中,app.js 是你的应用程序主文件名。

停止应用程序

停止应用程序同样很简单,你只需要运行以下命令即可:

forever stop app

其中,app 是你的应用程序名称。

重启应用程序

重启应用程序同样很简单,你只需要运行以下命令即可:

forever restart app

其中,app 是你的应用程序名称。

使用 systemd

systemd 是 Linux 系统上的一个进程管理器,它可以帮助我们将 node.js 应用程序作为后台服务运行。

创建服务文件

我们需要创建一个服务文件,文件名为 myapp.service,并将其保存到 /etc/systemd/system 目录下。其中,myapp 是你的应用程序名称,.service 是文件后缀。

服务文件的内容如下:

[Unit]
Description=myapp
After=network.target

[Service]
Environment=NODE_PORT=3000
ExecStart=/usr/bin/node /path/to/app.js
Restart=always
User=root
Group=root

[Install]
WantedBy=multi-user.target

其中,NODE_PORT 是环境变量,它可以指定应用程序监听的端口。ExecStart 是要执行的命令,它包含应用程序的路径和主文件名。

启动应用程序

启动应用程序非常简单,你只需要运行以下命令即可:

systemctl start myapp

其中,myapp 是你的应用程序名称。

停止应用程序

停止应用程序同样很简单,你只需要运行以下命令即可:

systemctl stop myapp

其中,myapp 是你的应用程序名称。

重启应用程序

重启应用程序同样很简单,你只需要运行以下命令即可:

systemctl restart myapp

其中,myapp 是你的应用程序名称。

总结

在本文中,我们介绍了如何将 node.js 应用程序作为后台服务运行,包括使用 pm2、forever 和 systemd 三种方式。你可以根据自己的需求选择适合自己的方式。