下面给你一份在 Debian 上部署 Node.js 服务的常见做法,从安装到上线,适合生产环境使用。
sudo apt update
sudo apt upgrade -y
建议:
sudo apt install -y curl gnupg
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs
node -v
npm -v
cd /var/www
sudo mkdir myapp
sudo chown $USER:$USER myapp
然后用 scp / git clone 上传代码。
cd myapp
npm install --production
node app.js
# 或
npm start
sudo npm install -g pm2
pm2 start app.js --name myapp
pm2 list
pm2 logs myapp
pm2 restart myapp
pm2 stop myapp
pm2 startup
pm2 save
sudo apt install -y nginx
sudo nano /etc/nginx/sites-available/myapp
示例:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d example.com
sudo ufw allow 22
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable
/var/www/myapp
├── app.js
├── package.json
├── node_modules
Nginx (80/443)
↓
PM2 (Node)
↓
localhost:3000
✅ 推荐方案:
如果你愿意,可以告诉我:
我可以直接给你定制部署方案。