feat: 添加部署脚本和文档并优化Kafka消费者配置
- 添加部署相关脚本(deploy.bat/update.bat/package.bat)和文档(deployment.md/package-guide.md) - 新增PM2配置文件(ecosystem.config.js/ecosystem.config.cjs) - 优化Kafka消费者配置支持动态fromOffset - 添加环境检查脚本(check-env.js) - 更新.gitignore添加release目录 - 补充.env.example配置文件
This commit is contained in:
132
scripts/deploy.bat
Normal file
132
scripts/deploy.bat
Normal file
@@ -0,0 +1,132 @@
|
||||
@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 web-bls-heartbeat-server
|
||||
echo 重启服务: pm2 restart web-bls-heartbeat-server
|
||||
echo 停止服务: pm2 stop web-bls-heartbeat-server
|
||||
echo 实时监控: pm2 monit
|
||||
echo.
|
||||
pause
|
||||
Reference in New Issue
Block a user