温馨提示×

centos怎么启动nodejs

小樊
43
2026-08-03 12:12:32
栏目: 编程语言

CentOS 上启动 Node.js,常见有几种方式,取决于你是直接运行后台运行还是生产环境部署。下面从简单到规范一步步说明。


一、直接启动 Node.js(最简单)

1️⃣ 确认 Node.js 已安装

node -v
npm -v

如果没有安装:

# 使用 NodeSource(推荐)
curl -fsSL https://rpm.nodesource.com/setup_18.x | sudo bash -
sudo yum install -y nodejs

2️⃣ 运行 Node.js 程序

假设你的入口文件是 app.js

node app.js

✅ 适合测试 / 开发

❌ 缺点:终端关闭,进程就停了


二、后台运行 Node.js(常用)

✅ 方式 1:使用 nohup

nohup node app.js > app.log 2>&1 &

查看进程:

ps -ef | grep node

停止进程:

kill -9 PID

✅ 方式 2:使用 screen

yum install -y screen
screen -S nodeapp
node app.js

退出但保持运行:

Ctrl + A 然后按 D

重新进入:

screen -r nodeapp

三、生产环境推荐方式(systemd)

1️⃣ 准备 Node.js 项目

假设:

  • 项目路径:/opt/nodeapp
  • 启动文件:app.js
cd /opt/nodeapp
node app.js

2️⃣ 创建 systemd 服务

sudo vi /etc/systemd/system/nodeapp.service

内容示例:

[Unit]
Description=Node.js App
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/opt/nodeapp
ExecStart=/usr/bin/node app.js
Restart=always

[Install]
WantedBy=multi-user.target

⚠️ 用 which node 确认 node 路径


3️⃣ 启动并设置开机自启

sudo systemctl daemon-reload
sudo systemctl start nodeapp
sudo systemctl enable nodeapp

查看状态:

systemctl status nodeapp

查看日志:

journalctl -u nodeapp -f

生产环境强烈推荐


四、使用 PM2(最省心)

1️⃣ 安装 PM2

npm install -g pm2

2️⃣ 启动项目

pm2 start app.js --name nodeapp

3️⃣ 开机自启

pm2 startup
pm2 save

4️⃣ 常用命令

pm2 list
pm2 logs
pm2 restart nodeapp
pm2 stop nodeapp

最推荐用于 Node.js 生产环境


五、总结对比

方式 适合场景 推荐指数
node app.js 测试
nohup 临时 ⭐⭐
screen 简单后台 ⭐⭐
systemd 生产 ⭐⭐⭐⭐
PM2 生产 ⭐⭐⭐⭐⭐

如果你愿意,可以告诉我:

  • ✅ CentOS 7 还是 8?
  • ✅ 是否是 Web 服务(如 Express / NestJS)
  • ✅ 是否需要 Nginx 反向代理

我可以给你一套完整部署方案

0