From db64df2da1be7d41fef95614177a3a94930a65ad Mon Sep 17 00:00:00 2001 From: Peter Zhang <18501667167@qq.com> Date: Fri, 29 May 2026 22:36:30 +0800 Subject: [PATCH] feat: add Windows one-click start/stop scripts for Gitea + Runner --- scripts/start_gitea.bat | 71 +++++++++++++++++++++++++++++++++++++++++ scripts/stop_gitea.bat | 27 ++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 scripts/start_gitea.bat create mode 100644 scripts/stop_gitea.bat diff --git a/scripts/start_gitea.bat b/scripts/start_gitea.bat new file mode 100644 index 0000000..b60edf8 --- /dev/null +++ b/scripts/start_gitea.bat @@ -0,0 +1,71 @@ +@echo off +chcp 65001 >nul +title Gitea CI/CD 服务管理 + +echo ============================================ +echo Gitea + Runner 启动脚本 +echo ============================================ +echo. + +set GITEA_DIR=C:\Users\peterz\tools\gitea +set RUNNER_DIR=C:\Users\peterz\tools\act_runner +set GITEA_DATA=C:\Users\peterz\tools\gitea\data +set GITEA_LOG=%GITEA_DATA%\gitea.log +set RUNNER_LOG=%RUNNER_DIR%\runner.log + +:: ========================================== +:: 启动 Gitea +:: ========================================== +echo [1/2] 启动 Gitea 服务... + +:: 检查是否已经在运行 +tasklist /FI "IMAGENAME eq gitea.exe" 2>NUL | find /I "gitea.exe" >NUL +if "%ERRORLEVEL%"=="0" ( + echo Gitea 已在运行中,跳过启动。 +) else ( + set GITEA_WORK_DIR=%GITEA_DATA% + cd /d %GITEA_DIR% + start "Gitea Server" /MIN cmd /c "set GITEA_WORK_DIR=%GITEA_DATA% && gitea.exe web --config %GITEA_DATA%\app.ini > %GITEA_LOG% 2>&1" + echo Gitea 已启动 (后台窗口)。 +) + +:: ========================================== +:: 启动 Runner +:: ========================================== +echo [2/2] 启动 Actions Runner... + +tasklist /FI "IMAGENAME eq act_runner.exe" 2>NUL | find /I "act_runner.exe" >NUL +if "%ERRORLEVEL%"=="0" ( + echo Runner 已在运行中,跳过启动。 +) else ( + cd /d %RUNNER_DIR% + start "Gitea Runner" /MIN cmd /c "act_runner.exe daemon > %RUNNER_LOG% 2>&1" + echo Runner 已启动 (后台窗口)。 +) + +:: ========================================== +:: 等待服务就绪 +:: ========================================== +echo. +echo 等待 Gitea 就绪... +:wait_loop +timeout /t 2 >nul +curl -s -o NUL http://localhost:3000 2>NUL +if errorlevel 1 goto wait_loop + +echo. +echo ============================================ +echo 所有服务已就绪! +echo Gitea: http://localhost:3000 +echo 仓库: http://localhost:3000/pzhang_zywl/document_analyzer +echo CI/CD: http://localhost:3000/pzhang_zywl/document_analyzer/actions +echo 日志: %GITEA_DATA%\gitea.log +echo %RUNNER_DIR%\runner.log +echo ============================================ +echo. + +:: 自动打开浏览器 +start "" http://localhost:3000/pzhang_zywl/document_analyzer + +echo 按任意键关闭此窗口(服务仍会在后台运行)... +pause >nul diff --git a/scripts/stop_gitea.bat b/scripts/stop_gitea.bat new file mode 100644 index 0000000..62988cd --- /dev/null +++ b/scripts/stop_gitea.bat @@ -0,0 +1,27 @@ +@echo off +chcp 65001 >nul +title 停止 Gitea 服务 + +echo 正在停止 Gitea 服务... + +:: 停止 Gitea +tasklist /FI "IMAGENAME eq gitea.exe" 2>NUL | find /I "gitea.exe" >NUL +if "%ERRORLEVEL%"=="0" ( + taskkill /F /IM gitea.exe >nul 2>&1 + echo Gitea 已停止。 +) else ( + echo Gitea 未在运行。 +) + +:: 停止 Runner +tasklist /FI "IMAGENAME eq act_runner.exe" 2>NUL | find /I "act_runner.exe" >NUL +if "%ERRORLEVEL%"=="0" ( + taskkill /F /IM act_runner.exe >nul 2>&1 + echo Runner 已停止。 +) else ( + echo Runner 未在运行。 +) + +echo. +echo 所有服务已停止。按任意键退出... +pause >nul