在腾讯云轻量应用服务器(TencentCloud Lighthouse)上部署 Node.js 接口,是一个非常常见且实用的操作。以下是详细步骤,帮助你从零开始完成部署。
✅ 一、准备工作
1. 购买腾讯云轻量应用服务器
- 登录 腾讯云控制台
- 进入「轻量应用服务器」页面,购买一台实例
- 操作系统建议选择:Ubuntu 20.04 / 22.04 或 CentOS 7/8
建议配置:2核2G以上,带宽 ≥ 3Mbps,适合运行 Node.js 后端服务。
✅ 二、连接到服务器(SSH)
使用 SSH 工具连接你的轻量服务器:
ssh root@你的服务器公网IP
例如:
ssh root@123.45.67.89
首次登录会提示输入密码(可在腾讯云控制台查看或重置密码)。
✅ 三、安装 Node.js 和 npm
推荐使用 NodeSource 的 PPA 安装最新稳定版 Node.js。
Ubuntu 系统示例:
# 更新包列表
sudo apt update
# 安装 curl(如果没有)
sudo apt install -y curl
# 添加 NodeSource 仓库(以 Node.js 18.x 为例)
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
# 安装 Node.js 和 npm
sudo apt install -y nodejs
# 验证安装
node -v # 应输出 v18.x.x
npm -v # 输出版本号
其他版本可参考:https://github.com/nodesource/distributions
✅ 四、上传你的 Node.js 项目
方法一:使用 Git 克隆项目(推荐)
如果你的项目托管在 GitHub/Gitee:
git clone https://github.com/yourname/your-node-project.git
cd your-node-project
npm install
方法二:本地打包上传(如无 Git)
使用 scp 命令上传:
# 在本地终端执行(非服务器)
scp -r ./your-node-project root@123.45.67.89:/root/
然后在服务器进入目录并安装依赖:
cd /root/your-node-project
npm install
✅ 五、测试运行 Node.js 服务
确保你的 app.js 或 server.js 监听正确的地址和端口:
app.listen(3000, '0.0.0.0', () => {
console.log('Server is running on port 3000');
});
注意:不能只监听
localhost或127.0.0.1,否则外部无法访问。
启动服务:
node app.js
或者使用 nodemon 开发时热更新(可选):
npm install -g nodemon
nodemon app.js
✅ 六、使用 PM2 守护进程(防止崩溃退出)
安装 PM2 让 Node.js 服务后台持续运行:
npm install -g pm2
# 启动项目
pm2 start app.js --name "my-api"
# 查看状态
pm2 list
# 设置开机自启
pm2 startup
pm2 save
常用命令:
pm2 restart my-api
pm2 logs my-api
pm2 stop my-api
✅ 七、配置防火墙和安全组
1. 腾讯云控制台设置安全组
- 进入轻量服务器控制台
- 找到你的实例 → 安全组
- 添加规则:放行你的服务端口(如
3000)
例如:
- 协议类型:TCP
- 端口:3000
- 源 IP:0.0.0.0/0(或限制为特定 IP)
2. 服务器本地防火墙(Ubuntu 默认是 ufw)
sudo ufw allow 3000
✅ 八、通过域名访问(可选)
1. 绑定域名
- 在腾讯云注册或解析一个域名
- 添加 A 记录指向你的服务器公网 IP
2. 使用 Nginx 反向X_X(推荐)
安装 Nginx:
sudo apt install -y nginx
配置反向X_X:
sudo nano /etc/nginx/sites-available/default
添加如下配置(假设你的 Node 服务运行在 3000 端口):
server {
listen 80;
server_name api.yourdomain.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_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
}
测试并重启 Nginx:
sudo nginx -t
sudo systemctl restart nginx
现在你可以通过 http://api.yourdomain.com 访问你的接口。
✅ 九、开启 HTTPS(SSL 证书)
使用 Let’s Encrypt 免费证书:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d api.yourdomain.com
按提示操作即可自动配置 HTTPS。
✅ 总结:完整流程图
购买轻量服务器 → SSH 登录 → 安装 Node.js → 上传代码 → npm install
↓
使用 PM2 启动
↓
配置安全组 + 防火墙开放端口
↓
(可选)Nginx 反向X_X + 域名 + HTTPS
📌 常见问题
| 问题 | 解决方案 |
|---|---|
| 外部无法访问接口 | 检查安全组是否放行端口,Node 是否监听 0.0.0.0 |
| PM2 启动失败 | 检查日志 pm2 logs,确认入口文件路径正确 |
| Nginx 502 错误 | Node 服务未启动,或端口不匹配 |
如有具体项目结构或错误信息,欢迎提供,我可以进一步帮你排查!
祝你部署顺利!🚀
秒懂云