腾讯云轻量应用服务器部署nodejs项目?

在腾讯云轻量应用服务器(Tencent Cloud Lighthouse)上部署 Node.js 项目是一个非常常见且实用的操作。以下是详细的步骤指南,帮助你从零开始完成部署。


✅ 一、准备工作

  1. 购买并登录轻量应用服务器

    • 登录 腾讯云控制台
    • 购买一台轻量应用服务器(推荐选择 Ubuntu 或 CentOS 系统)
    • 记录公网 IP 地址
    • 设置登录密码或使用 SSH 密钥对
  2. 本地环境准备

    • 安装 SSH 工具(如:Terminal、PuTTY、Xshell、VS Code Remote-SSH)
    • 准备好你的 Node.js 项目代码(可上传到 GitHub/Gitee)

✅ 二、连接服务器

使用 SSH 连接到你的轻量服务器:

ssh root@你的服务器公网IP
# 例如:
ssh root@123.45.67.89

输入密码后即可进入系统。


✅ 三、安装 Node.js 和 npm

Ubuntu 系统为例:

方法一:使用 nvm(推荐)

# 1. 安装 nvm(Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash

# 退出重新登录或执行以下命令加载 nvm
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"

# 2. 安装最新 LTS 版本的 Node.js
nvm install --lts
# 或指定版本,如:
nvm install 18

# 3. 验证安装
node -v
npm -v

方法二:直接下载二进制包(备用)

# 下载 Node.js(以 v18.x 为例)
cd /tmp
wget https://nodejs.org/dist/v18.17.0/node-v18.17.0-linux-x64.tar.xz

# 解压
sudo mkdir -p /usr/local/lib/nodejs
sudo tar -xJf node-v18.17.0-linux-x64.tar.xz -C /usr/local/lib/nodejs

# 配置环境变量
echo 'export NODEJS_HOME=/usr/local/lib/nodejs/node-v18.17.0-linux-x64' >> ~/.profile
echo 'export PATH=$NODEJS_HOME/bin:$PATH' >> ~/.profile

# 加载配置
source ~/.profile

# 验证
node -v
npm -v

✅ 四、上传并部署项目

方式 1:通过 Git 克隆项目(推荐)

# 安装 git
sudo apt update && sudo apt install git -y

# 克隆你的项目(替换为你的仓库地址)
git clone https://github.com/yourname/your-node-project.git
cd your-node-project

# 安装依赖
npm install
# 或 yarn install(如果你用 yarn)

方式 2:本地上传文件(小项目可用)

使用 scp 命令从本地上传:

scp -r ./your-project root@123.45.67.89:/root/myapp

然后在服务器上进入目录安装依赖:

cd /root/myapp
npm install

✅ 五、配置进程守护(使用 PM2)

避免 Node.js 进程退出,推荐使用 PM2 守护进程。

# 全局安装 PM2
npm install -g pm2

# 启动项目(假设入口文件是 app.js 或 server.js)
pm2 start app.js --name "my-node-app"

# 查看运行状态
pm2 list

# 开机自启(重要!)
pm2 startup
# 执行提示中的命令,类似:
# pm2 save

✅ 六、配置防火墙和端口

1. 在腾讯云控制台开放端口

  • 进入 轻量应用服务器控制台
  • 找到你的实例 → “防火墙” → 添加规则
  • 放行你的应用端口(如 3000, 8080, 5000 等)
  • 如果要使用 HTTP/HTTPS,建议放行 80443

2. 测试服务是否运行

在项目中确保监听的是 0.0.0.0 而不是 localhost

app.listen(3000, '0.0.0.0', () => {
  console.log('Server running on port 3000');
});

✅ 七、(可选)绑定域名 + HTTPS

1. 解析域名到服务器 IP

在腾讯云 DNS 控制台添加 A 记录,指向你的轻量服务器公网 IP。

2. 使用 Nginx 反向X_X(推荐)

安装 Nginx:

sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx

配置反向X_X(编辑 /etc/nginx/sites-available/default):

server {
    listen 80;
    server_name yourdomain.com www.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 reload nginx

3. 免费 HTTPS(使用 Certbot + Let’s Encrypt)

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com

自动配置 SSL 证书,并设置自动续期。


✅ 八、常用命令总结

功能 命令
启动应用 pm2 start app.js --name "myapp"
停止应用 pm2 stop myapp
重启应用 pm2 restart myapp
查看日志 pm2 logs myapp
删除进程 pm2 delete myapp
保存开机启动 pm2 save

✅ 九、访问你的网站

浏览器访问:

http://你的服务器IP:3000     # 如果没配 Nginx
http://yourdomain.com         # 配置了域名和 Nginx 后

🔐 安全建议

  • 不要用 root 用户长期运行项目(可创建普通用户)
  • 定期更新系统:sudo apt update && sudo apt upgrade -y
  • 使用 .env 文件管理敏感信息,不要提交到代码库
  • 使用 pm2systemd 管理进程,确保崩溃后自动重启

如有具体框架(如 Express、NestJS、Next.js)需求,也可以告诉我,我可以提供更具体的部署方案。

祝你部署顺利!🚀

未经允许不得转载:云计算导航 » 腾讯云轻量应用服务器部署nodejs项目?