auto-deploy-demo/deploy/DEPLOY_GUIDE.md

3.5 KiB
Raw Blame History

服务器部署指南

服务器信息

  • IP地址: 49.232.209.156
  • 用户名: ai-auto
  • 密码: ashai@X1an
  • 域名: ashai.com.cn

部署步骤

第一步SSH连接服务器

在本地终端执行:

ssh ai-auto@49.232.209.156
# 密码: ashai@X1an

第二步安装Node.js环境

# 安装Node.js 18.x
curl -fsSL https://rpm.nodesource.com/setup_18.x | sudo bash -
sudo yum install -y nodejs

# 验证安装
node -v
npm -v

第三步安装PM2进程管理器

sudo npm install -g pm2
pm2 -v

第四步:创建项目目录

mkdir -p /home/ai-auto/auto-deploy-demo
cd /home/ai-auto/auto-deploy-demo

第五步:上传项目文件

本地电脑新开一个终端,执行以下命令上传文件:

# 进入项目目录
cd f:\develop\TraeProject\auto-deploy-demo

# 上传server目录
scp -r server ai-auto@49.232.209.156:/home/ai-auto/auto-deploy-demo/

# 上传projects目录
scp -r projects ai-auto@49.232.209.156:/home/ai-auto/auto-deploy-demo/

# 上传client/dist目录
scp -r client/dist ai-auto@49.232.209.156:/home/ai-auto/auto-deploy-demo/client/

# 上传配置文件
scp package.json package-lock.json .env ai-auto@49.232.209.156:/home/ai-auto/auto-deploy-demo/

第六步:安装项目依赖

回到服务器终端

cd /home/ai-auto/auto-deploy-demo
npm install --production

第七步:配置防火墙

# 开放主服务端口
sudo firewall-cmd --permanent --add-port=8888/tcp

# 开放项目端口范围
sudo firewall-cmd --permanent --add-port=9000-9100/tcp

# 重载防火墙
sudo firewall-cmd --reload

# 查看开放的端口
sudo firewall-cmd --list-ports

第八步:启动服务

cd /home/ai-auto/auto-deploy-demo

# 启动服务
pm2 start server/index.js --name "auto-deploy-demo"

# 保存PM2配置
pm2 save

# 设置开机自启动
pm2 startup
# 执行输出的命令需要sudo权限

第九步:验证部署

# 查看服务状态
pm2 status

# 查看日志
pm2 logs auto-deploy-demo

# 测试API
curl http://localhost:8888

访问地址

常用命令

# 查看服务状态
pm2 status

# 查看日志
pm2 logs auto-deploy-demo

# 重启服务
pm2 restart auto-deploy-demo

# 停止服务
pm2 stop auto-deploy-demo

# 重新部署(更新代码后)
cd /home/ai-auto/auto-deploy-demo
pm2 restart auto-deploy-demo

域名配置

确保域名 ashai.com.cn 已解析到服务器IP 49.232.209.156

DNS解析配置

  • 记录类型: A记录
  • 主机记录: @
  • 记录值: 49.232.209.156

故障排查

1. 无法访问服务

# 检查服务是否运行
pm2 status

# 检查端口是否监听
netstat -tlnp | grep 8888

# 检查防火墙
sudo firewall-cmd --list-ports

2. 端口被占用

# 查看端口占用
netstat -tlnp | grep 8888

# 杀死占用进程
kill -9 <PID>

3. 查看错误日志

pm2 logs auto-deploy-demo --lines 100

4. 重启服务器后服务未自动启动

pm2 resurrect

更新部署

当需要更新代码时:

# 1. 在本地上传新文件
scp -r server ai-auto@49.232.209.156:/home/ai-auto/auto-deploy-demo/
scp -r client/dist ai-auto@49.232.209.156:/home/ai-auto/auto-deploy-demo/client/

# 2. 在服务器重启服务
pm2 restart auto-deploy-demo