diff --git a/README.md b/README.md index a537e83..4764314 100644 --- a/README.md +++ b/README.md @@ -43,13 +43,13 @@ LOG_FILE=logs/usage.log | `ADMIN_PASSWORD` | — | Passwort für die Admin-Oberfläche (**Pflicht**) | | `PROXY_HOST` | `0.0.0.0` | Bind-Adresse des Proxys | | `PROXY_PORT` | `8000` | Port des Proxys | +| `ADMIN_HOST` | `0.0.0.0` | Bind-Adresse der Admin-API (z. B. `127.0.0.1` für lokalen Zugriff) | | `ADMIN_PORT` | `8001` | Port der Admin-API | | `DATABASE_URL` | `sqlite:///./test.db` | DB-Verbindungsstring (SQLite oder PostgreSQL) | | `OLLAMA_URL` | `http://localhost:11434` | Adresse der Ollama-Instanz (auch in der UI änderbar) | | `DEFAULT_MODEL` | `llama3` | Standard-Modell für `/v1/chat/completions` (auch in der UI änderbar) | | `APP_TZ` | `Europe/Berlin` | Zeitzone für tägliche/monatliche Quota-Resets | | `LOG_FILE` | `logs/usage.log` | Pfad der rotierenden Nutzungs-Logdatei | -| `ADMIN_HOST` | `0.0.0.0` | Bind-Adresse der Admin-API (z. B. `127.0.0.1` für lokalen Zugriff) | | `ALLOWED_ORIGINS` | `http://localhost:5173` | CORS-Origins (nur für Entwicklung relevant) | ## Entwicklung (lokal) diff --git a/run_dev.py b/run_dev.py index f636a2b..5d78f12 100644 --- a/run_dev.py +++ b/run_dev.py @@ -40,13 +40,14 @@ def main(): proxy_host = os.environ.get('PROXY_HOST', '0.0.0.0') proxy_port = os.environ.get('PROXY_PORT', '8000') + admin_host = os.environ.get('ADMIN_HOST', '127.0.0.1') admin_port = os.environ.get('ADMIN_PORT', '8001') print('Initialisiere Datenbank...') subprocess.run([str(python), 'init_db.py'], cwd=backend, check=True) print(f'Starte Proxy → http://{proxy_host}:{proxy_port}') - print(f'Starte Admin-API → http://127.0.0.1:{admin_port}') + print(f'Starte Admin-API → http://{admin_host}:{admin_port}') print('Starte Frontend → http://localhost:5173') env = {**os.environ, 'PYTHONUNBUFFERED': '1'} @@ -59,7 +60,7 @@ def main(): ), 'Proxy ', '34'), # blau (subprocess.Popen( [str(python), '-m', 'uvicorn', 'admin:app', '--reload', - '--host', '127.0.0.1', '--port', admin_port], + '--host', admin_host, '--port', admin_port], cwd=backend, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, env=env, ), 'Admin ', '33'), # gelb (subprocess.Popen( diff --git a/start.sh b/start.sh index cc7d798..0d785ea 100755 --- a/start.sh +++ b/start.sh @@ -21,6 +21,7 @@ fi PROXY_HOST=${PROXY_HOST:-0.0.0.0} PROXY_PORT=${PROXY_PORT:-8000} +ADMIN_HOST=${ADMIN_HOST:-127.0.0.1} ADMIN_PORT=${ADMIN_PORT:-8001} FRONTEND_PORT=5173 @@ -60,9 +61,8 @@ cd backend python3 -m uvicorn main:app --reload --host "$PROXY_HOST" --port "$PROXY_PORT" & PIDS+=($!) -# Admin-API immer nur lokal erreichbar (Host nicht konfigurierbar) -echo "Starte Admin-API auf 127.0.0.1:${ADMIN_PORT}..." -python3 -m uvicorn admin:app --reload --host 127.0.0.1 --port "$ADMIN_PORT" & +echo "Starte Admin-API auf ${ADMIN_HOST}:${ADMIN_PORT}..." +python3 -m uvicorn admin:app --reload --host "$ADMIN_HOST" --port "$ADMIN_PORT" & PIDS+=($!) cd .. @@ -75,7 +75,7 @@ PIDS+=($!) cd .. echo "Backend läuft (Port $PROXY_PORT)" -echo "Admin-API läuft (Port $ADMIN_PORT, nur lokal)" +echo "Admin-API läuft (${ADMIN_HOST}:${ADMIN_PORT})" echo "Admin-Oberfläche: http://localhost:$FRONTEND_PORT" wait