在 Debian 上启动 Node.js,通常有以下几种常见场景,取决于你是直接运行脚本、作为服务运行还是用进程管理工具。
sudo apt update
sudo apt install nodejs npm
查看版本:
node -v
npm -v
node app.js
如果是 ES Module(package.json 中 "type": "module"):
node app.mjs
&node app.js &
nohup(推荐简单后台)nohup node app.js > app.log 2>&1 &
查看进程:
ps aux | grep node
sudo nano /etc/systemd/system/nodeapp.service
示例内容:
[Unit]
Description=Node.js App
After=network.target
[Service]
User=www-data
WorkingDirectory=/var/www/nodeapp
ExecStart=/usr/bin/node /var/www/nodeapp/app.js
Restart=always
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start nodeapp
sudo systemctl enable nodeapp
sudo systemctl status nodeapp
sudo npm install -g pm2
pm2 start app.js
pm2 startup
pm2 save
pm2 list
pm2 logs
pm2 restart app
pm2 stop app
sudo lsof -i:3000
避免用 root 跑 Node,建议用普通用户或 www-data。
如果你能告诉我:
我可以给你更精准的启动方案。