Skip to content

Latest commit

 

History

History
41 lines (36 loc) · 2.31 KB

README.md

File metadata and controls

41 lines (36 loc) · 2.31 KB

Второе вступительное задание в ШБР.

REST API сервис, который позволяет магазинам загружать и обновлять информацию о товарах, а пользователям - смотреть какие товары были обновлены за последние сутки, а также следить за динамикой цен товара или категории за указанный интервал времени.

API сервиса реализует спецификацию в соответствии с заданием.

Инструкция по запуску приложения

  1. Для запуска в Docker.

В папке с файлом docker-compose.yml выполнить следующие команды:

docker-compose build
docker-compose up
  1. Запуск без Docker - вручную.

Сначала необходимо установить Poetry:

curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python3 -

Затем получить requirements.txt и выполнить установку пакетов:

poetry export -f requirements.txt --output requirements.txt --without-hashes
pip install -r requirements.txt

Далее необходимо убедиться, что создана база данных в PostgreSQL, и выполнить миграции в папке с приложением, указав значения для вашей БД:

cd market
# Пример url: market_app:backend_school_2022@localhost:5432/mega_market
alembic -x url=<имя_пользователя>:<пароль>@<адрес>:<порт>/<название_вашей_базы_данных> upgrade head
cd -

Поле выполнения миграций остаётся установить переменные окружения:

export DB_URL=<имя_пользователя>:<пароль>@<адрес>:<порт>/<название_вашей_базы_данных>

И запустить приложение:

uvicorn market.api.main:app --port 80