Initial commit with production configuration and deployment scripts
Some checks failed
aagro-ui-admin CI / build (14.x) (push) Has been cancelled
aagro-ui-admin CI / build (16.x) (push) Has been cancelled
Java CI with Maven / build (11) (push) Has been cancelled
Java CI with Maven / build (17) (push) Has been cancelled
Java CI with Maven / build (8) (push) Has been cancelled
Some checks failed
aagro-ui-admin CI / build (14.x) (push) Has been cancelled
aagro-ui-admin CI / build (16.x) (push) Has been cancelled
Java CI with Maven / build (11) (push) Has been cancelled
Java CI with Maven / build (17) (push) Has been cancelled
Java CI with Maven / build (8) (push) Has been cancelled
This commit is contained in:
149
deploy.bat
Normal file
149
deploy.bat
Normal file
@@ -0,0 +1,149 @@
|
||||
@echo off
|
||||
REM ==========================================================================
|
||||
REM 项目部署脚本
|
||||
REM 用于将Java后端项目部署到远程服务器(192.168.0.95)
|
||||
REM ==========================================================================
|
||||
|
||||
echo ==========================================================================
|
||||
echo 芋道后台管理系统部署脚本
|
||||
echo ==========================================================================
|
||||
|
||||
REM 配置信息
|
||||
set REMOTE_HOST=192.168.0.95
|
||||
set REMOTE_USER=root
|
||||
set REMOTE_PASSWORD=aiotagro
|
||||
set REMOTE_DIR=/data/java/aiotagro
|
||||
|
||||
echo 服务器地址: %REMOTE_HOST%
|
||||
echo 用户名: %REMOTE_USER%
|
||||
echo 目标目录: %REMOTE_DIR%
|
||||
|
||||
echo.
|
||||
REM 本地项目路径
|
||||
set LOCAL_PROJECT_DIR=E:\vue\aiotagro-mini
|
||||
|
||||
echo 切换到项目目录: %LOCAL_PROJECT_DIR%
|
||||
cd /d %LOCAL_PROJECT_DIR%
|
||||
|
||||
REM 检查是否安装了Maven
|
||||
echo 检查Maven环境...
|
||||
mvn -v >nul 2>&1
|
||||
if %errorlevel% neq 0 (
|
||||
echo.
|
||||
echo [错误] 未找到Maven命令
|
||||
echo 请先安装Maven并配置环境变量PATH
|
||||
echo 下载地址: https://maven.apache.org/download.cgi
|
||||
echo.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo.
|
||||
echo Maven版本信息:
|
||||
mvn -v
|
||||
|
||||
echo.
|
||||
REM 打包项目
|
||||
echo ==================== 开始打包项目 ====================
|
||||
mvn clean package -Dmaven.test.skip=true
|
||||
if %errorlevel% neq 0 (
|
||||
echo.
|
||||
echo [错误] 项目打包失败,请检查代码是否有错误
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo.
|
||||
echo ==================== 打包完成 ====================
|
||||
|
||||
REM 查找打包后的jar文件
|
||||
echo 查找打包生成的jar文件...
|
||||
for /f "delims=" %%i in ('dir aagro-server\target\*.jar /b /s') do set JAR_FILE=%%i
|
||||
|
||||
if "%JAR_FILE%"=="" (
|
||||
echo.
|
||||
echo [错误] 未找到打包后的jar文件
|
||||
echo 请确认项目结构是否正确
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo 找到jar文件: %JAR_FILE%
|
||||
|
||||
REM 检查是否安装了Putty工具(pscp和plink)
|
||||
echo.
|
||||
echo 检查Putty工具...
|
||||
pscp -V >nul 2>&1
|
||||
if %errorlevel% neq 0 (
|
||||
echo.
|
||||
echo [警告] 未找到pscp命令,请先安装Putty工具
|
||||
echo 下载地址: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
|
||||
echo.
|
||||
echo 安装完成后请将Putty安装目录添加到环境变量PATH中
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
REM 使用pscp上传文件
|
||||
echo.
|
||||
echo ==================== 开始上传文件 ====================
|
||||
pscp -pw %REMOTE_PASSWORD% "%JAR_FILE%" %REMOTE_USER%@%REMOTE_HOST%:%REMOTE_DIR%/
|
||||
if %errorlevel% neq 0 (
|
||||
echo.
|
||||
echo [错误] 文件上传失败,请检查网络连接和服务器配置
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo 上传配置文件...
|
||||
pscp -pw %REMOTE_PASSWORD% "aagro-server\src\main\resources\application-prod.yaml" %REMOTE_USER%@%REMOTE_HOST%:%REMOTE_DIR%/
|
||||
if %errorlevel% neq 0 (
|
||||
echo.
|
||||
echo [错误] 配置文件上传失败
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo.
|
||||
echo ==================== 上传启动脚本 ====================
|
||||
echo cd /data/java/aiotagro > start.sh
|
||||
echo nohup java -jar *.jar --spring.profiles.active=prod ^> app.log 2^>^&1 ^& >> start.sh
|
||||
echo echo "应用已启动" >> start.sh
|
||||
|
||||
echo 上传启动脚本...
|
||||
pscp -pw %REMOTE_PASSWORD% start.sh %REMOTE_USER%@%REMOTE_HOST%:%REMOTE_DIR%/
|
||||
if %errorlevel% neq 0 (
|
||||
echo.
|
||||
echo [错误] 启动脚本上传失败
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
REM 在远程服务器上设置权限并启动应用
|
||||
echo.
|
||||
echo ==================== 远程部署 ====================
|
||||
echo 设置启动脚本权限...
|
||||
plink -ssh -P 22 -pw %REMOTE_PASSWORD% %REMOTE_USER%@%REMOTE_HOST% "chmod +x %REMOTE_DIR%/start.sh"
|
||||
if %errorlevel% neq 0 (
|
||||
echo.
|
||||
echo [错误] 设置远程脚本权限失败
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo 启动应用...
|
||||
plink -ssh -P 22 -pw %REMOTE_PASSWORD% %REMOTE_USER%@%REMOTE_HOST% "cd %REMOTE_DIR%; ./start.sh"
|
||||
if %errorlevel% neq 0 (
|
||||
echo.
|
||||
echo [错误] 远程启动应用失败
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo.
|
||||
echo ==================== 部署完成 ====================
|
||||
echo 部署成功完成!
|
||||
echo 服务器: %REMOTE_HOST%
|
||||
echo 目录: %REMOTE_DIR%
|
||||
echo.
|
||||
pause
|
||||
Reference in New Issue
Block a user