Загрузить файлы в «/»
This commit is contained in:
50
start.sh
Normal file
50
start.sh
Normal file
@@ -0,0 +1,50 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
cd "$ROOT"
|
||||
|
||||
PYTHON="${PYTHON:-python3}"
|
||||
VENV="$ROOT/.venv"
|
||||
PORT="${PORT:-8000}"
|
||||
|
||||
echo "==> ROBO-OPS: сборка и запуск"
|
||||
echo " Каталог: $ROOT"
|
||||
|
||||
if ! command -v "$PYTHON" >/dev/null 2>&1; then
|
||||
if command -v python >/dev/null 2>&1; then
|
||||
PYTHON=python
|
||||
else
|
||||
echo "Ошибка: Python 3 не найден. Установите Python 3.10+"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "==> Python: $($PYTHON --version)"
|
||||
|
||||
if [ ! -d "$VENV" ]; then
|
||||
echo "==> Создание виртуального окружения..."
|
||||
"$PYTHON" -m venv "$VENV"
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC1091
|
||||
source "$VENV/bin/activate" 2>/dev/null || source "$VENV/Scripts/activate"
|
||||
|
||||
echo "==> Установка зависимостей..."
|
||||
python -m pip install --upgrade pip -q
|
||||
python -m pip install -r requirements.txt -q
|
||||
|
||||
mkdir -p "$ROOT/data"
|
||||
|
||||
export ROBO_OPS_VIA_START_SH=1
|
||||
export DATABASE_PATH="${DATABASE_PATH:-$ROOT/data/robo_ops.db}"
|
||||
export EXTERNAL_API_KEY="${EXTERNAL_API_KEY:-robo-ops-external-demo-key-2026}"
|
||||
|
||||
echo ""
|
||||
echo "==> Сервер запущен: http://localhost:$PORT"
|
||||
echo " Регистрация: http://localhost:$PORT/register"
|
||||
echo " API docs: http://localhost:$PORT/docs"
|
||||
echo " Остановка: Ctrl+C"
|
||||
echo ""
|
||||
|
||||
exec python -m uvicorn app.main:app --host 0.0.0.0 --port "$PORT" --reload
|
||||
Reference in New Issue
Block a user