@echo off echo ======================================== echo MQTT项目部署到服务器 192.168.1.17 echo ======================================== echo. echo 步骤1: 检查服务器连接... ping 192.168.1.17 -n 2 > nul if %errorlevel% equ 0 ( echo 服务器连接正常 ) else ( echo 服务器连接失败 exit /b 1 ) echo. echo 步骤2: 在服务器上创建目录结构... ssh yangfei@192.168.1.17 "mkdir -p /home/yangfei/mqtt-vue-dashboard/backend" ssh yangfei@192.168.1.17 "mkdir -p /home/yangfei/mqtt-vue-dashboard/frontend" ssh yangfei@192.168.1.17 "mkdir -p /home/yangfei/mqtt-vue-dashboard/logs" echo 目录创建完成 echo. echo 步骤3: 构建前端项目... cd mqtt-vue-dashboard if exist node_modules ( echo 前端依赖已存在,跳过安装 ) else ( echo 安装前端依赖... npm install if %errorlevel% neq 0 ( echo 前端依赖安装失败 exit /b 1 ) ) echo 构建前端... npm run build if %errorlevel% neq 0 ( echo 前端构建失败 exit /b 1 ) echo. echo 步骤4: 上传前端文件到服务器... if exist dist ( scp -r dist yangfei@192.168.1.17:/home/yangfei/mqtt-vue-dashboard/frontend/ if %errorlevel% equ 0 ( echo 前端文件上传成功 ) else ( echo 前端文件上传失败 exit /b 1 ) ) else ( echo 前端构建目录不存在 exit /b 1 ) echo. echo 步骤5: 构建后端项目... cd server if exist node_modules ( echo 后端依赖已存在,跳过安装 ) else ( echo 安装后端依赖... npm install if %errorlevel% neq 0 ( echo 后端依赖安装失败 exit /b 1 ) ) echo 构建后端... npm run build if %errorlevel% neq 0 ( echo 后端构建失败 exit /b 1 ) echo. echo 步骤6: 上传后端文件到服务器... if exist dist ( scp -r dist yangfei@192.168.1.17:/home/yangfei/mqtt-vue-dashboard/backend/ echo 后端代码上传成功 ) if exist package.json ( scp package.json yangfei@192.168.1.17:/home/yangfei/mqtt-vue-dashboard/backend/ echo 配置文件上传成功 ) if exist package-lock.json ( scp package-lock.json yangfei@192.168.1.17:/home/yangfei/mqtt-vue-dashboard/backend/ echo 依赖文件上传成功 ) echo. echo 步骤7: 在服务器上安装依赖... ssh yangfei@192.168.1.17 "cd /home/yangfei/mqtt-vue-dashboard/backend && npm install --production" echo 服务器依赖安装完成 echo. echo 步骤8: 启动后端服务... ssh yangfei@192.168.1.17 "cd /home/yangfei/mqtt-vue-dashboard/backend && nohup npm start > ../logs/backend.log 2>&1 &" echo 后端服务启动完成 echo. echo 步骤9: 验证部署结果... ssh yangfei@192.168.1.17 "ls -la /home/yangfei/mqtt-vue-dashboard/frontend/dist/" > nul 2>&1 if %errorlevel% equ 0 ( echo 前端文件验证成功 ) else ( echo 前端文件验证失败 ) ssh yangfei@192.168.1.17 "ps aux | grep 'node.*backend' | grep -v grep" > nul 2>&1 if %errorlevel% equ 0 ( echo 后端服务运行正常 ) else ( echo 后端服务未运行 ) echo. echo ======================================== echo 部署完成! echo ======================================== echo. echo 访问信息: echo 后端API: http://192.168.1.17:3002 echo 前端应用: http://192.168.1.17 echo. echo 查看日志: echo ssh yangfei@192.168.1.17 'tail -f /home/yangfei/mqtt-vue-dashboard/logs/backend.log' echo. pause