在轻量应用服务器(如腾讯云轻量应用服务器、阿里云轻量应用服务器等)上搭建 Node.js 后端服务,可以按照以下步骤进行操作。以 Ubuntu 系统 为例,演示完整的部署流程:
✅ 一、准备工作
-
购买并登录轻量应用服务器
- 登录云服务商控制台(如腾讯云、阿里云)。
- 购买轻量应用服务器,选择操作系统(推荐 Ubuntu 20.04/22.04 LTS)。
- 获取公网 IP 地址和 SSH 登录密码或密钥。
-
使用 SSH 连接到服务器
ssh root@你的服务器公网IP输入密码或使用私钥登录。
✅ 二、安装 Node.js 和 npm
方法一:使用 NodeSource APT 仓库(推荐)
# 更新系统包列表
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 --version
npm --version
注:你可以选择其他版本,如
setup_20.x。
✅ 三、上传或创建你的 Node.js 项目
方式1:直接在服务器创建简单项目(测试用)
mkdir my-node-app
cd my-node-app
npm init -y
npm install express
创建 app.js 文件:
// app.js
const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;
app.get('/', (req, res) => {
res.send('Hello from Node.js on Light Server!');
});
app.listen(PORT, '0.0.0.0', () => {
console.log(`Server is running on http://0.0.0.0:${PORT}`);
});
方式2:上传本地项目
- 使用
scp命令上传:scp -r ./your-local-project root@your-server-ip:/root/my-node-app
✅ 四、安装 PM2(进程管理工具,保持服务常驻)
sudo npm install -g pm2
# 启动应用
pm2 start app.js --name "my-api"
# 查看运行状态
pm2 list
# 查看日志
pm2 logs
设置开机自启:
pm2 startup
# 按提示执行生成的命令,例如:
# sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u root --hp /root
✅ 五、配置防火墙和安全组
确保服务器的 安全组规则 允许访问你使用的端口(如 3000)。
在轻量服务器控制台中:
- 找到「防火墙」或「安全组」设置。
- 添加入站规则:允许 TCP 端口
3000(或你使用的端口)从0.0.0.0/0访问。
或者使用 ufw(Ubuntu 自带防火墙):
sudo ufw allow 3000
sudo ufw enable
✅ 六、(可选)使用 Nginx 反向(推荐用于生产)
-
安装 Nginx:
sudo apt install -y nginx sudo systemctl start nginx sudo systemctl enable nginx -
配置反向:
编辑配置文件:sudo nano /etc/nginx/sites-available/default修改
location /块:location / { proxy_pass http://localhost: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://你的服务器IP 直接访问服务。
✅ 七、访问你的服务
打开浏览器,输入:
http://<服务器公网IP>:3000
或如果你配置了 Nginx,则访问:
http://<服务器公网IP>
应该能看到返回内容。
✅ 常见问题排查
| 问题 | 解决方案 |
|---|---|
| 无法访问端口 | 检查安全组、防火墙是否放行端口 |
| Node.js 报错权限 | 使用 sudo 或切换为普通用户运行 |
| PM2 启动失败 | 检查日志 pm2 logs,确认依赖是否安装 |
| Nginx 502 错误 | 确保 Node.js 服务正在运行且监听 localhost:3000 |
✅ 总结
搭建流程概览:
- 登录服务器 → 2. 安装 Node.js → 3. 部署项目 → 4. 使用 PM2 托管 → 5. 开放端口 → 6. (可选)Nginx 反向
这样,你就成功在轻量应用服务器上部署了一个稳定的 Node.js 后端服务!
如有需要,还可以结合域名 + HTTPS(Let’s Encrypt)进一步完善。需要我继续教你吗?
CLOUD技术笔记