腾讯云轻量应用服务器部署Node.js项目指南
结论与核心观点
在腾讯云轻量应用服务器上部署Node.js项目只需5个关键步骤:环境配置→代码部署→进程管理→域名绑定→安全加固。重点在于使用PM2进行进程守护和Nginx反向X_X,确保服务稳定可靠。
详细部署步骤
1. 服务器环境准备
-
连接服务器:通过SSH登录腾讯云轻量应用服务器
ssh root@your_server_ip
-
安装Node.js环境(推荐使用nvm管理多版本):
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash source ~/.bashrc nvm install 16 # 安装Node.js 16 LTS版本
-
安装必要工具:
apt update && apt install -y git nginx
2. 项目代码部署
-
获取项目代码(三种常见方式):
-
Git克隆:
git clone your_repo_url cd your_project npm install
-
本地代码上传:
scp -r ./local_project root@your_server_ip:/path/to/project
-
使用腾讯云CODING DevOps(可视化部署)
-
-
安装依赖:
npm install --production # 仅安装生产依赖
3. 进程管理(关键步骤)
-
安装PM2进程守护:
npm install pm2 -g
-
启动项目:
pm2 start app.js --name "my-node-app" # 根据实际入口文件调整
-
设置开机自启:
pm2 startup pm2 save
4. 配置Nginx反向X_X(重要)
-
创建Nginx配置文件:
nano /etc/nginx/conf.d/nodeapp.conf
-
基础配置模板:
server { listen 80; server_name your_domain.com; location / { proxy_pass http://localhost:3000; # 与Node.js应用端口一致 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; } }
-
测试并重载Nginx:
nginx -t && nginx -s reload
5. 安全加固
-
防火墙配置:
ufw allow 80/tcp # HTTP ufw allow 22/tcp # SSH ufw enable
-
HTTPS配置(使用Let’s Encrypt):
apt install certbot python3-certbot-nginx certbot --nginx -d your_domain.com
-
定期更新:
apt update && apt upgrade -y
常见问题解决方案
-
端口占用问题:
- 使用
netstat -tulnp
查看占用端口的进程 - 修改Node.js应用端口或停止冲突服务
- 使用
-
PM2日志查看:
pm2 logs my-node-app # 实时日志 pm2 flush # 清理日志
-
性能监控:
pm2 monit # 可视化监控
最佳实践建议
- 使用Docker容器化部署(适合复杂环境)
- 配置CI/CD流水线(推荐腾讯云CODING DevOps)
- 启用日志轮转:防止日志文件过大
pm2 install pm2-logrotate
- 设置资源限制:避免单个应用耗尽资源
pm2 start app.js --max-memory-restart 500M
总结
腾讯云轻量应用服务器部署Node.js的核心是"环境隔离+进程守护+反向X_X"。通过PM2+Nginx的组合,可以轻松构建生产级Node.js应用环境。建议首次部署后立即配置备份快照,并定期检查服务器资源使用情况。