温馨提示×

Nodejs在Debian如何启动

小樊
38
2026-08-17 04:19:57
栏目: 编程语言

在 Debian 系统上启动 Node.js 项目,常见做法取决于你是直接运行还是作为服务运行。下面按常见场景说明。


一、直接运行 Node.js(适合测试)

1. 安装 Node.js

# 使用 apt 安装(版本可能较旧)
sudo apt update
sudo apt install nodejs npm -y

# 查看版本
node -v
npm -v

如需最新版,推荐使用 NodeSourcenvm


2. 运行 Node.js 程序

进入项目目录:

cd /path/to/your/project

运行入口文件(常见为 app.jsindex.js):

node app.js

如果有 package.json

npm install
npm start

二、后台运行(不推荐长期使用)

1. 使用 &

node app.js &

2. 使用 nohup

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

查看日志:

tail -f app.log

三、使用 systemd(推荐,生产环境)

1. 创建服务文件

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

示例内容:

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

[Service]
Type=simple
User=your_user
WorkingDirectory=/path/to/your/project
ExecStart=/usr/bin/node /path/to/your/project/app.js
Restart=on-failure

[Install]
WantedBy=multi-user.target

可通过 which node 查看 node 路径


2. 启动并设置开机自启

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

3. 常用命令

sudo systemctl status nodeapp
sudo systemctl restart nodeapp
sudo systemctl stop nodeapp

查看日志:

journalctl -u nodeapp -f

四、使用 PM2(最常用,强烈推荐)

1. 安装 PM2

npm install -g pm2

2. 启动项目

pm2 start app.js --name my-app

3. 常用命令

pm2 list
pm2 restart my-app
pm2 stop my-app
pm2 logs my-app

4. 设置开机自启

pm2 startup
pm2 save

五、常见问题

Node 命令不存在?

bash: node: command not found

解决:

  • 确认已安装
  • 检查 PATH
  • 使用 which node

端口被占用?

lsof -i :3000
kill -9 PID

总结(推荐方案)

场景 推荐方式
本地测试 node app.js
生产环境 PM2systemd
需要自动重启 PM2

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

  • Debian 版本
  • Node 项目类型(Express / Koa / Nest / 纯 Node)
  • 是否需要 HTTPS / Nginx

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

0