Skip to content

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

1 watching

Forks

Latest commit

 

History

36 Commits

Folders and files

Repository files navigation

Storage user

Сервис для хранения данных о пользователях

Что делает приложение? Функционал:
  • Пользователь логиниться на сервисе и ему присваиваться bearer token в cookie браузера
  • Работа с бд PostgreSQL
  • Создавать пользователя может только админ
  • К сервису к кадому эндпоинту написаны тесты
  • Подключена докуменация и swagger для работы через браузер.
  • Пользователь может получиться информация о себе, может ее изменять информация о себе и выводить список пользователей
  • Админ может создавать, изменять, удалять и получаться постраничный список пользователей

Important

Добавлен файл .env-sample (для использования надо привести к ввиду <.env>) с помощью, которого можно настроить работу проекта. В нем лежат настройки (далее идут примеры заполнения полей):

Настройки, которые надо установить для работы приложения
Значение Содержание Примечание
SECRET_KEY ahrfgyu34hfy3qh4fy4hufy3qfyb3k4f код генерируется командой, которая указана ниже
POSTGRES_DB NAME_BD название базы данных
POSTGRES_USER USER_BD название пользователя базы данных
POSTGRES_PASSWORD PASSWORD_BD пароль базы данных
POSTGRES_SERVER HOST_BD подключение к базе данных
POSTGRES_DRIVER postgresql типы подключение к базе данных PostgreSQL
SUPERUSER_EMAIL email_superuser установить почту суперюзера
SUPERUSER_PASSWORD password_superuser установить пароль суперюзера
COOKIE_NAME bearer название ключа cookie, который присвается пользователю при вхождение на сервис
EMAIL_TEST_USER test@test.ru установить email для тестового пользоватлея
PASSWORD_TEST_USER test установить пароль для тестового пользователя
Как использовать?
  • Переходим в папку где будет лежать код

  • Копируем код с git:

    git clone git@github.com:Plutarxi99/storage_user.git
  • Создаем виртуальное окружение:

    python3 -m venv env
    source env/bin/activate
  • После установки нужных настроeк в файле <.env>. Надо выполнить команду для установки пакетов:

    pip install -r requirements.txt 
  • Создать секретный ключ:

    openssl rand -hex 32
  • Удалить все миграции storage_user/backend/migrations/versions;

  • Создать базу данных:

    psql -U postgres
    create database storage_user;
  • Заполнить файл .env и приложение готово к запуску;

  • Создать первого пользователя в сервеси. Перейти в файл и исполнить его

    python3 backend/src/backend_pre_start.py 
Что использовалось в приложение? Функционал:
  • Подключено fastapi_filter для пагинации
  • Подключено jwt для авторизации пользователя Bearer token
  • Подключено PostgreSQL
  • Обложил тестами все эндпоинты сервиса
  • Добавил миграции с помощью alembic
  • Добавил инструкции для создания docker-compose
Как запустить приложение в docker? Функционал:
  • Выполняем код:

    docker-compose build
    docker-compose up
  • Для создания первого пользователя и начать пользоваться сервисом:

    docker exec app python3 backend/src/backend_pre_start.py

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages