auto-deploy-demo/DEPLOYMENT.md

2.1 KiB
Raw Blame History

快速部署系统 - 部署文档

系统要求

  • Node.js 18.0 或更高版本
  • npm 9.0 或更高版本
  • 腾讯云服务器 (推荐配置: 2核4G)

一、服务器环境配置

1. 安装 Node.js

# 使用 nvm 安装 Node.js
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
source ~/.bashrc
nvm install 18
nvm use 18

2. 安装 PM2 (进程管理器)

npm install -g pm2

3. 配置防火墙

# 开放系统端口
firewall-cmd --permanent --add-port=8888/tcp
firewall-cmd --permanent --add-port=9000-9100/tcp
firewall-cmd --reload

4. 腾讯云安全组配置

在腾讯云控制台配置安全组规则:

  • 开放 8888 端口 (管理界面)
  • 开放 9000-9100 端口范围 (部署的项目)

二、项目部署

1. 上传项目代码

# 将项目上传到服务器
scp -r auto-deploy-demo root@your-server-ip:/opt/

2. 安装依赖

cd /opt/auto-deploy-demo

# 安装后端依赖
npm install

# 安装前端依赖并构建
cd client
npm install
npm run build
cd ..

3. 配置环境变量

创建 .env 文件:

cat > .env << EOF
PORT=8888
JWT_SECRET=your-secure-secret-key-change-this
HOST=your-server-ip
EOF

4. 启动服务

# 使用 PM2 启动
pm2 start server/index.js --name "deploy-system"

# 设置开机自启
pm2 startup
pm2 save

5. 验证部署

访问 http://your-server-ip:8888 检查系统是否正常运行。

三、Nginx 反向代理配置 (可选)

如需使用域名访问,可配置 Nginx

server {
    listen 80;
    server_name your-domain.com;

    location / {
        proxy_pass http://127.0.0.1:8888;
        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;
    }
}

四、常见问题

Q: 端口被占用怎么办?

检查端口占用:

lsof -i :8888

Q: 如何查看日志?

pm2 logs deploy-system

Q: 如何重启服务?

pm2 restart deploy-system