Co-authored-by: ArtemFilin1990 <221041513+ArtemFilin1990@users.noreply.github.com>
74 lines
2.5 KiB
Bash
Executable File
74 lines
2.5 KiB
Bash
Executable File
#!/bin/bash
|
|
# Скрипт для запуска API сервера поиска
|
|
|
|
echo "=================================================="
|
|
echo "Запуск API сервера справочника подшипников"
|
|
echo "=================================================="
|
|
echo ""
|
|
|
|
# Проверка Python
|
|
if ! command -v python3 &> /dev/null; then
|
|
echo "❌ Python 3 не найден. Установите Python 3.8 или выше."
|
|
exit 1
|
|
fi
|
|
|
|
echo "✓ Python найден: $(python3 --version)"
|
|
|
|
# Проверка виртуального окружения
|
|
if [ ! -d "venv" ]; then
|
|
echo ""
|
|
echo "Создание виртуального окружения..."
|
|
python3 -m venv venv
|
|
echo "✓ Виртуальное окружение создано"
|
|
fi
|
|
|
|
# Активация виртуального окружения
|
|
echo ""
|
|
echo "Активация виртуального окружения..."
|
|
source venv/bin/activate || . venv/Scripts/activate
|
|
|
|
# Установка зависимостей
|
|
echo ""
|
|
echo "Установка зависимостей..."
|
|
pip install -q --upgrade pip
|
|
pip install -q -r requirements.txt
|
|
|
|
echo "✓ Зависимости установлены"
|
|
|
|
# Проверка наличия данных
|
|
if [ ! -f "data/autocomplete_dict.json" ] || [ ! -f "data/document_index.json" ]; then
|
|
echo ""
|
|
echo "=================================================="
|
|
echo "Построение индексов (это может занять несколько минут)..."
|
|
echo "=================================================="
|
|
|
|
if [ ! -f "data/autocomplete_dict.json" ]; then
|
|
echo ""
|
|
echo "Построение словаря автодополнения..."
|
|
python scripts/build_autocomplete_dict.py
|
|
fi
|
|
|
|
if [ ! -f "data/document_index.json" ]; then
|
|
echo ""
|
|
echo "Построение индекса документов..."
|
|
python scripts/build_search_index.py
|
|
fi
|
|
|
|
echo ""
|
|
echo "✓ Индексы построены"
|
|
fi
|
|
|
|
# Запуск сервера
|
|
echo ""
|
|
echo "=================================================="
|
|
echo "Запуск сервера..."
|
|
echo "=================================================="
|
|
echo ""
|
|
echo "API доступно по адресу: http://localhost:8000"
|
|
echo "Документация Swagger: http://localhost:8000/docs"
|
|
echo ""
|
|
echo "Для остановки нажмите Ctrl+C"
|
|
echo ""
|
|
|
|
uvicorn api.app.api:app --reload --host 0.0.0.0 --port 8000
|