在腾讯云轻量应用服务器(Lighthouse)上部署 Node.js 接口是一个常见且实用的场景。以下是详细的步骤,帮助你从零开始部署一个 Node.js 后端接口服务。
✅ 一、准备工作
-
购买并登录腾讯云轻量应用服务器
- 登录 腾讯云控制台
- 进入「轻量应用服务器」,购买一台实例(推荐选择 Ubuntu/CentOS 系统)
- 记录公网 IP 地址和登录密码(或密钥)
-
本地连接服务器
使用 SSH 工具连接:ssh root@你的服务器公网IP(如果是 Ubuntu 镜像,可能是
ubuntu@...)
✅ 二、安装 Node.js 和 npm
以 Ubuntu 为例:
# 更新系统包
sudo apt update
# 安装 Node.js(推荐使用 nvm 方式安装多版本)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# 重新加载 shell 配置
source ~/.bashrc
# 安装最新 LTS 版本的 Node.js
nvm install --lts
# 检查是否安装成功
node -v
npm -v
推荐使用 LTS 版本(如 v18.x 或 v20.x)
✅ 三、上传你的 Node.js 项目
方法 1:使用 Git 克隆(推荐)
如果你的项目托管在 GitHub/Gitee 等平台:
# 安装 git
sudo apt install git -y
# 克隆项目
git clone https://github.com/yourname/your-node-project.git
cd your-node-project
方法 2:本地上传文件(使用 SCP)
# 在本地终端执行(非服务器)
scp -r ./your-node-project root@你的IP:/root/
✅ 四、安装依赖并测试运行
cd your-node-project
# 安装依赖
npm install
# 测试启动(假设入口是 app.js 或 server.js)
node app.js
注意:默认监听
localhost:3000可能无法X_X访问,需改为0.0.0.0:3000
修改代码示例:
app.listen(3000, '0.0.0.0', () => {
console.log('Server running on port 3000');
});
✅ 五、使用 PM2 守护进程管理 Node 应用
避免关闭终端后服务停止。
# 全局安装 pm2
npm install -g pm2
# 启动应用
pm2 start app.js --name "my-api"
# 设置开机自启
pm2 startup
pm2 save
常用命令:
pm2 status
pm2 logs my-api
pm2 restart my-api
pm2 stop my-api
✅ 六、配置防火墙和安全组
确保服务器允许外部访问你的端口(如 3000)
-
腾讯云控制台设置安全组
- 进入轻量服务器详情页 → 安全组
- 添加规则:允许 自定义 TCP 端口 3000(或你使用的端口),源 IP 可设为
0.0.0.0/0
-
服务器本地防火墙(可选)
sudo ufw allow 3000
✅ 七、(可选)使用 Nginx 反向X_X
更安全、支持 HTTPS、可绑定域名。
1. 安装 Nginx
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
2. 配置反向X_X
编辑配置文件:
sudo nano /etc/nginx/sites-available/default
添加如下内容(根据实际情况修改):
server {
listen 80;
server_name your-domain.com; # 或者公网IP
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;
}
}
3. 重启 Nginx
sudo nginx -t # 测试配置
sudo systemctl reload nginx
现在可以通过 http://你的IP 直接访问接口(无需加 :3000)
✅ 八、绑定域名(可选)
- 在腾讯云或其它平台注册域名
- 解析域名到服务器公网 IP(A 记录)
- 在 Nginx 中将
server_name改为你的域名 - 可使用 Let’s Encrypt 配置 HTTPS(推荐)
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com
✅ 九、测试接口
在浏览器或 Postman 中访问:
http://你的IP/api/users
或
http://yourdomain.com/api/users
✅ 常见问题排查
| 问题 | 解决方案 |
|---|---|
| X_X无法访问 | 检查安全组是否放行端口 |
| Node 服务崩溃 | 查看日志 pm2 logs |
| Nginx 502 错误 | 检查 Node 是否正常运行,端口是否正确 |
| 无法克隆 Git | 检查网络或是否需要配置 SSH 密钥 |
✅ 总结
✅ 成功部署流程:
- 购买轻量服务器 → 2. 安装 Node.js → 3. 上传项目 → 4. 安装依赖 → 5. PM2 启动 → 6. 配置安全组 → 7. (可选)Nginx + 域名 + HTTPS
如果你提供具体的项目结构或框架(如 Express、Koa、NestJS),我可以给出更精确的配置建议。
需要我帮你写一个简单的 Express 示例并部署吗?
CDNK博客