Микросервис для автоматизации бронирования столиков в ресторанах с асинхронным управлением данными, кэшированием и автоматизированным развертыванием.
- Управление бронированием: Создание, отмена и просмотр резервов в реальном времени.
- Контроль доступности: Автоматическая проверка вместимости и статуса столиков при попытке бронирования.
- Аутентификация: Регистрация и вход пользователей для управления личными бронированиями, используя JWT - токены.
- Кэширование: Оптимизация часто запрашиваемых данных (список доступных столов) через Redis.
- Авто-миграции: Автоматическое обновление схемы базы данных через Alembic при старте контейнера.
- REST API: Документированный интерфейс на FastAPI с валидацией входных данных через Pydantic.
- Клонировать git-репозиторий
- Открыть проект
- Сконфигурировать .env по шаблону
- Выполнить команду docker compose up -d --build
- Подождать 20 секунд и перейти на: http://127.0.0.1:8000/docs
- Клонировать git-репозиторий
- Открыть проект
- Сконфигурировать .env по шаблону
- Скачать poetry и установить зависимости
Версия Poetry: 2.2.1
- Выполнить команду docker-compose up -d database redis-cache
- Применить миграции
- Выполнить команду python -m app.main и перейти на http://127.0.0.1:8000/docs
- Зарегистрироваться
- Авторизоваться и получить JWT access token
- Скопировать его и вставить в поле у кнопки Authorize
- После появится возможность использовать эндпоинты
Все настройки можно регулировать в .env