mirror of
https://github.com/t8y2/dbx.git
synced 2026-10-20 08:18:52 +00:00
73 lines
1.8 KiB
Batchfile
73 lines
1.8 KiB
Batchfile
@echo off
|
||
setlocal EnableDelayedExpansion
|
||
|
||
for %%A in (%*) do (
|
||
if /I "%%~A"=="-h" goto :help
|
||
if /I "%%~A"=="--help" goto :help
|
||
if /I "%%~A"=="/help" goto :help
|
||
)
|
||
goto :main
|
||
|
||
:help
|
||
echo Usage: start.bat [OPTION]
|
||
echo.
|
||
echo Start the DBX Web browser service.
|
||
echo.
|
||
echo Options:
|
||
echo -h, --help, /help Show this help message and exit.
|
||
echo.
|
||
echo Environment variables:
|
||
echo DBX_PORT Listen port (default: 4224)
|
||
echo DBX_DATA_DIR Data directory (default: package-dir\data)
|
||
echo DBX_PUBLIC_BASE_PATH URL path prefix (default: /)
|
||
echo DBX_PASSWORD Set the Web login password
|
||
echo DBX_DISABLE_PASSWORD Set to 1 to disable login protection
|
||
echo RUST_LOG Configure backend log filtering
|
||
echo RUST_BACKTRACE Set to 1 to include Rust backtraces
|
||
echo.
|
||
echo Examples:
|
||
echo set DBX_PORT=8080 ^&^& start.bat
|
||
echo set RUST_LOG=dbx_web=debug,tower_http=info ^&^& start.bat
|
||
exit /b 0
|
||
|
||
:main
|
||
|
||
:: 脚本所在目录(等价于 ROOT)
|
||
set ROOT=%~dp0
|
||
:: 去掉末尾反斜杠
|
||
set ROOT=%ROOT:~0,-1%
|
||
|
||
set DBX_PACKAGE_ROOT=%ROOT%
|
||
|
||
:: static dir
|
||
if "%DBX_STATIC_DIR%"=="" (
|
||
:: dist静态资源文件已直接嵌入到二进制文件中,环境变量中没有设置的话,直接用二进制中的静态文件
|
||
rem set DBX_STATIC_DIR=%ROOT%\dist
|
||
)
|
||
:: data dir
|
||
if "%DBX_DATA_DIR%"=="" (
|
||
set DBX_DATA_DIR=%ROOT%\data
|
||
)
|
||
|
||
:: port
|
||
if "%DBX_PORT%"=="" (
|
||
set DBX_PORT=4224
|
||
)
|
||
|
||
:: base path
|
||
set BASE_PATH=%DBX_PUBLIC_BASE_PATH%
|
||
if "%BASE_PATH%"=="" set BASE_PATH=/
|
||
|
||
:: 如果不是以 / 开头,补上 /
|
||
echo %BASE_PATH% | findstr /r "^/" >nul || (
|
||
set BASE_PATH=/!BASE_PATH!
|
||
)
|
||
|
||
echo DBX_DATA_DIR=%DBX_DATA_DIR%
|
||
echo DBX browser UI: http://127.0.0.1:%DBX_PORT%%BASE_PATH%
|
||
|
||
cd /d "%ROOT%"
|
||
|
||
:: 执行程序
|
||
dbx-web.exe %*
|