FastAPI Auth Service - это высокопроизводительный микросервис аутентификации, построенный на современном асинхронном фреймворке FastAPI. Сервис предоставляет полный цикл управления пользователями и безопасной аутентификации.
REGISTER | LOGIN | ME |
---|---|---|
REFRESH | LOGOUT |
---|---|
- Клонируйте репозиторий:
git clone https://github.com/wpotoke/authorization_service.git
cd auth_service
- Активируйте виртуальное окружени и установите зависисмости:
python -m venv venv
pip install -r requirements.txt
- Создайте файл переменных окружения: .env
SECRET_KEY = "random secret key"
# database
DB_URL = "postgresql+asyncpg://{username}:{password}@db:5432/{db_name}"
SQL_USER=username
SQL_PASSWORD=db_password
SQL_DATABASE=db_name
- Сгенерируйте SECRET_KEY (если необходимо) и вставьте его в файл .env:
python -c "import secrets; print(secrets.token_urlsafe(32))"
- Создайте пользователя и базу данных, также передайте права на пользование и укажите кодировку
CREATE USER your_username WITH PASSWORD 'your_password';
CREATE DATABASE your_databasename OWNER your_username ENCODING 'UTF8' LC_COLLATE 'ru_RU.UTF8' LC_CTYPE 'ru_RU.UTF8' TEMPLATE=template0;
- Соберите и запустите контейнеры:
docker-compose up --build
docker-compose exec web pytest tests/
после данных действий приложение будет доступно
- Health (дает понять что приложение работает)
- Документация: http://localhost:8000/docs#