95 lines
3.6 KiB
Batchfile
95 lines
3.6 KiB
Batchfile
|
|
@echo off
|
|||
|
|
chcp 65001 >nul
|
|||
|
|
echo ========================================
|
|||
|
|
echo BLS心跳接收端打包脚本
|
|||
|
|
echo ========================================
|
|||
|
|
|
|||
|
|
setlocal enabledelayedexpansion
|
|||
|
|
|
|||
|
|
:: 设置发布目录
|
|||
|
|
set RELEASE_DIR=release
|
|||
|
|
set VERSION=1.0.0
|
|||
|
|
set PACKAGE_NAME=web-bls-heartbeat-server-v%VERSION%
|
|||
|
|
|
|||
|
|
echo [1/6] 清理旧的发布目录...
|
|||
|
|
if exist "%RELEASE_DIR%" (
|
|||
|
|
rmdir /s /q "%RELEASE_DIR%"
|
|||
|
|
)
|
|||
|
|
mkdir "%RELEASE_DIR%"
|
|||
|
|
|
|||
|
|
echo [2/6] 复制构建文件...
|
|||
|
|
if exist "dist" (
|
|||
|
|
xcopy /E /I /Y dist "%RELEASE_DIR%\dist" >nul
|
|||
|
|
echo [成功] 构建文件已复制
|
|||
|
|
) else (
|
|||
|
|
echo [错误] 未找到dist目录,请先运行 npm run build
|
|||
|
|
pause
|
|||
|
|
exit /b 1
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
echo [3/6] 复制配置文件...
|
|||
|
|
copy package.json "%RELEASE_DIR%\" >nul
|
|||
|
|
copy package-lock.json "%RELEASE_DIR%\" >nul
|
|||
|
|
copy ecosystem.config.cjs "%RELEASE_DIR%\" >nul
|
|||
|
|
copy .env.example "%RELEASE_DIR%\" >nul
|
|||
|
|
echo [成功] 配置文件已复制
|
|||
|
|
|
|||
|
|
echo [4/6] 复制脚本文件...
|
|||
|
|
if not exist "%RELEASE_DIR%\scripts" (
|
|||
|
|
mkdir "%RELEASE_DIR%\scripts"
|
|||
|
|
)
|
|||
|
|
copy scripts\deploy.bat "%RELEASE_DIR%\scripts\" >nul
|
|||
|
|
copy scripts\update.bat "%RELEASE_DIR%\scripts\" >nul
|
|||
|
|
copy scripts\check-env.js "%RELEASE_DIR%\scripts\" >nul
|
|||
|
|
echo [成功] 脚本文件已复制
|
|||
|
|
|
|||
|
|
echo [5/6] 复制配置示例...
|
|||
|
|
if not exist "%RELEASE_DIR%\src\config" (
|
|||
|
|
mkdir "%RELEASE_DIR%\src\config"
|
|||
|
|
)
|
|||
|
|
copy src\config\config.example.js "%RELEASE_DIR%\src\config\" >nul
|
|||
|
|
echo [成功] 配置示例已复制
|
|||
|
|
|
|||
|
|
echo [6/6] 创建说明文件...
|
|||
|
|
echo # BLS心跳接收端发布包 > "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo. >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo 版本: %VERSION% >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo 发布日期: %date% %time% >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo. >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo ## 快速部署指南 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo. >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo 1. 将整个release文件夹复制到目标服务器 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo 2. 进入项目目录: cd C:\BLS_Heartbeat_Server >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo 3. 运行部署脚本: scripts\deploy.bat >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo 4. 配置环境变量: 编辑.env文件 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo 5. 服务将自动启动 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo. >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo ## 文件说明 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - dist/: 构建后的应用程序文件 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - package.json: 项目依赖配置 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - ecosystem.config.js: PM2进程管理配置 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - .env.example: 环境变量配置示例 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - scripts/: 部署和更新脚本 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - src/config/config.example.js: 配置文件示例 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo. >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo ## 常用命令 >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - 首次部署: scripts\deploy.bat >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - 更新部署: scripts\update.bat >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - 查看状态: pm2 status >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - 查看日志: pm2 logs web-bls-heartbeat-server >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo - 重启服务: pm2 restart web-bls-heartbeat-server >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo. >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo 详细文档请参考 docs/deployment.md >> "%RELEASE_DIR%\README.txt"
|
|||
|
|
echo [成功] 说明文件已创建
|
|||
|
|
|
|||
|
|
echo ========================================
|
|||
|
|
echo 打包完成!
|
|||
|
|
echo ========================================
|
|||
|
|
echo.
|
|||
|
|
echo 发布目录: %RELEASE_DIR%
|
|||
|
|
echo 发布包内容:
|
|||
|
|
dir /b "%RELEASE_DIR%"
|
|||
|
|
echo.
|
|||
|
|
echo 复制整个 %RELEASE_DIR% 文件夹到目标服务器即可
|
|||
|
|
echo.
|
|||
|
|
pause
|