В рамках тестового задания релизовано 2 микросервиса: сервис sso авторизации и клиент getme с единственным endpoint /me. База Данных MySql.
При разработке использован один из основных принципов REST - данные пользователя хранятся у пользователя (и пользователь сам отвечает за передачу нужных параметров серверу), поэтому, на сервере не хранится ни одной сессии.
Константы для доступа к бд хранятся в переменных окружения. Перед запуском необходимо их добавить:
- DB_NAME
- DB_USER
- DB_PASSWORD
- DB_HOST
Начальные установки:
pip3 install -r requirements
Запуск sso сервера:
cd sso
python3 manage.py db migrate
python3 manage.py db upgrade
python3 app.py
Запуск getme сервиса:
cd ../getme
python3 app.py
По умолчанию сервер sso работает на 5000 порту, сервис getme - на 5001