# 服务器部署指南 ## 服务器信息 - **IP地址**: 49.232.209.156 - **用户名**: ai-auto - **密码**: ashai@X1an - **域名**: ashai.com.cn ## 部署步骤 ### 第一步:SSH连接服务器 在本地终端执行: ```bash ssh ai-auto@49.232.209.156 # 密码: ashai@X1an ``` ### 第二步:安装Node.js环境 ```bash # 安装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进程管理器 ```bash sudo npm install -g pm2 pm2 -v ``` ### 第四步:创建项目目录 ```bash mkdir -p /home/ai-auto/auto-deploy-demo cd /home/ai-auto/auto-deploy-demo ``` ### 第五步:上传项目文件 在**本地电脑**新开一个终端,执行以下命令上传文件: ```bash # 进入项目目录 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/ ``` ### 第六步:安装项目依赖 回到**服务器终端**: ```bash cd /home/ai-auto/auto-deploy-demo npm install --production ``` ### 第七步:配置防火墙 ```bash # 开放主服务端口 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 ``` ### 第八步:启动服务 ```bash cd /home/ai-auto/auto-deploy-demo # 启动服务 pm2 start server/index.js --name "auto-deploy-demo" # 保存PM2配置 pm2 save # 设置开机自启动 pm2 startup # 执行输出的命令(需要sudo权限) ``` ### 第九步:验证部署 ```bash # 查看服务状态 pm2 status # 查看日志 pm2 logs auto-deploy-demo # 测试API curl http://localhost:8888 ``` ## 访问地址 - **主系统**: http://ashai.com.cn:8888 或 http://49.232.209.156:8888 - **默认账号**: admin - **默认密码**: admin123 ## 常用命令 ```bash # 查看服务状态 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. 无法访问服务 ```bash # 检查服务是否运行 pm2 status # 检查端口是否监听 netstat -tlnp | grep 8888 # 检查防火墙 sudo firewall-cmd --list-ports ``` ### 2. 端口被占用 ```bash # 查看端口占用 netstat -tlnp | grep 8888 # 杀死占用进程 kill -9 ``` ### 3. 查看错误日志 ```bash pm2 logs auto-deploy-demo --lines 100 ``` ### 4. 重启服务器后服务未自动启动 ```bash pm2 resurrect ``` ## 更新部署 当需要更新代码时: ```bash # 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 ```