Files
Web_BLS_Heartbeat_Server/scripts/deploy.bat
XuJiacheng 41301f9ce5 feat: 实现GUID主键与service_mask索引改造
- 将主键从自增id改为GUID格式并添加格式校验
- 为service_mask添加表达式索引优化首位查询性能
- 更新相关文档说明改造方案与验证步骤
- 添加统计模块记录数据库写入与Kafka消费量
- 重构Redis心跳协议改用LIST类型存储项目状态
- 修复部署脚本中的服务名称不一致问题
2026-01-17 18:37:44 +08:00

133 lines
3.2 KiB
Batchfile
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@echo off
chcp 65001 >nul
echo ========================================
echo BLS心跳接收端部署脚本
echo ========================================
setlocal enabledelayedexpansion
:: 检查Node.js是否安装
echo [1/7] 检查Node.js环境...
node --version >nul 2>&1
if errorlevel 1 (
echo [错误] 未检测到Node.js请先安装Node.js
pause
exit /b 1
)
echo [成功] Node.js版本:
node --version
:: 检查PM2是否安装
echo [2/7] 检查PM2环境...
pm2 --version >nul 2>&1
if errorlevel 1 (
echo [警告] 未检测到PM2正在安装PM2...
call npm install -g pm2
if errorlevel 1 (
echo [错误] PM2安装失败
pause
exit /b 1
)
)
echo [成功] PM2版本:
pm2 --version
:: 检查.env文件
echo [3/7] 检查环境配置文件...
if not exist ".env" (
if exist ".env.example" (
echo [信息] 创建.env文件...
copy .env.example .env >nul
echo [警告] 请编辑.env文件设置正确的配置参数
echo [提示] 使用记事本打开: notepad .env
pause
) else (
echo [错误] 未找到.env.example文件
pause
exit /b 1
)
) else (
echo [成功] 环境配置文件已存在
)
:: 安装依赖
echo [4/7] 安装项目依赖...
if not exist "node_modules" (
call npm install --production
if errorlevel 1 (
echo [错误] 依赖安装失败
pause
exit /b 1
)
) else (
echo [信息] 依赖已存在,跳过安装
)
:: 创建日志目录
echo [5/7] 创建日志目录...
if not exist "logs" (
mkdir logs
echo [成功] 日志目录创建成功
) else (
echo [信息] 日志目录已存在
)
:: 检查构建文件
echo [6/7] 检查构建文件...
if not exist "dist\index.es.js" (
echo [警告] 未找到构建文件,请先运行 npm run build
echo [提示] 如果这是首次部署请确保已上传dist目录
pause
exit /b 1
)
echo [成功] 构建文件检查通过
:: 初始化数据库
echo [7/7] 初始化数据库...
echo [信息] 运行数据库初始化脚本...
call npm run db:apply
if errorlevel 1 (
echo [警告] 数据库初始化失败,请检查数据库连接配置
echo [提示] 可以稍后手动运行: npm run db:apply
) else (
echo [成功] 数据库初始化完成
)
:: 使用PM2启动服务
echo ========================================
echo 启动服务
echo ========================================
pm2 start ecosystem.config.cjs
if errorlevel 1 (
echo [错误] 服务启动失败
pause
exit /b 1
)
:: 设置开机自启
echo ========================================
echo 设置开机自启
echo ========================================
pm2 save
pm2 startup
echo [提示] 请按照提示完成开机自启设置
:: 显示服务状态
echo ========================================
echo 服务状态
echo ========================================
pm2 status
echo ========================================
echo 部署完成!
echo ========================================
echo.
echo 常用命令:
echo 查看状态: pm2 status
echo 查看日志: pm2 logs bls-heartbeat
echo 重启服务: pm2 restart bls-heartbeat
echo 停止服务: pm2 stop bls-heartbeat
echo 实时监控: pm2 monit
echo.
pause