:: This method is not recommended, and we recommend you use the `start.sh` file with WSL instead. @echo off SETLOCAL ENABLEDELAYEDEXPANSION :: Get the directory of the current script SET "SCRIPT_DIR=%~dp0" cd /d "%SCRIPT_DIR%" || exit /b SET "KEY_FILE=.webui_secret_key" IF "%PORT%"=="" SET PORT=8080 IF "%HOST%"=="" SET HOST=0.0.0.0 SET "WEBUI_SECRET_KEY=%WEBUI_SECRET_KEY%" SET "WEBUI_JWT_SECRET_KEY=%WEBUI_JWT_SECRET_KEY%" :: Check if WEBUI_SECRET_KEY and WEBUI_JWT_SECRET_KEY are not set IF "%WEBUI_SECRET_KEY%%WEBUI_JWT_SECRET_KEY%" == " " ( echo Loading WEBUI_SECRET_KEY from file, not provided as an environment variable. IF NOT EXIST "%KEY_FILE%" ( echo Generating WEBUI_SECRET_KEY :: Generate a random value to use as a WEBUI_SECRET_KEY in case the user didn't provide one SET /p WEBUI_SECRET_KEY=>%KEY_FILE% echo WEBUI_SECRET_KEY generated ) echo Loading WEBUI_SECRET_KEY from %KEY_FILE% SET /p WEBUI_SECRET_KEY=<%KEY_FILE% ) :: Execute uvicorn SET "WEBUI_SECRET_KEY=%WEBUI_SECRET_KEY%" uvicorn open_webui.main:app --host "%HOST%" --port "%PORT%" --forwarded-allow-ips '*'