#!/bin/bash # .env laden if [ -f .env ]; then set -a source .env set +a fi if [ -z "$ADMIN_PASSWORD" ]; then echo "Fehler: ADMIN_PASSWORD ist nicht gesetzt. Bitte .env befüllen." exit 1 fi # Datenbank initialisieren echo "Initialisiere Datenbank..." cd backend python3 init_db.py cd .. PROXY_HOST=${PROXY_HOST:-0.0.0.0} PROXY_PORT=${PROXY_PORT:-8000} ADMIN_PORT=${ADMIN_PORT:-8001} # Backend starten echo "Starte Backend (Proxy) auf ${PROXY_HOST}:${PROXY_PORT}..." cd backend python3 -m uvicorn main:app --reload --host "$PROXY_HOST" --port "$PROXY_PORT" & BACKEND_PID=$! # 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" & ADMIN_PID=$! cd .. # Frontend starten echo "Starte Frontend..." cd frontend npm install --silent npm run dev & FRONTEND_PID=$! cd .. echo "Backend läuft auf PID: $BACKEND_PID (Port $PROXY_PORT)" echo "Admin-API läuft auf PID: $ADMIN_PID (Port 8001, nur lokal)" echo "Frontend läuft auf PID: $FRONTEND_PID" echo "Admin-Oberfläche: http://localhost:5173" wait