腾讯云轻量服务器部署 Node.js 项目:从零到线上
环境安装三件套
①Node.js:用 NodeSource 源装最新 LTS(`curl -fsSL https://deb.nodesource.com/setup_22.x | bash -` 然后 `apt install -y nodejs`),版本管理用 nvm 也行。②pm2:`npm install -g pm2`——进程守护,崩溃自动重启、开机自启。③nginx:`apt install -y nginx`——做反向代理。
部署流程
本地项目打包上传(scp 或 git clone 到服务器)→ `npm install --production` 装依赖 → `pm2 start app.js --name myapp` 启动 → `pm2 save && pm2 startup` 设置开机自启。
nginx 反向代理配置的核心几行:
把 `location / { proxy_pass http://127.0.0.1:你的端口; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }` 写进 server 块,`nginx -t` 通过后 reload。这样 80/443 的请求转发给 Node,Node 只监听内网更安全。
新手常见坑
①直接 `node app.js` 跑在终端里,SSH 一断进程就死——必须用 pm2 或 systemd 守护;②忘了放行端口或配置反代,访问 502;③依赖里含原生编译模块(node-gyp)在服务器上装失败——先 `apt install build-essential`。
常见问题
安装 Node.js 与 pm2 → 上传项目并 npm install → pm2 start 启动并设置开机自启 → nginx 反向代理 80/443 到 Node 端口。全程约 15 分钟。
未使用进程守护工具。使用 pm2(pm2 start && pm2 save && pm2 startup)或 systemd 服务管理,进程崩溃自动重启且开机自启。
pm2 对 Node 项目管理更方便(日志、监控、集群模式内置);systemd 更通用且不依赖 npm。单 Node 项目用 pm2 上手最快。