Проект YaMDb собирает отзывы пользователей на произведения
Функционал проекта адаптирован для использования PostgreSQL и развертывания в контейнерах Docker. Используются инструменты CI и CD.
- Python 3.7
- Django 2.2.16
- REST Framework 3.12.4
- PyJWT 2.1.0
- Django filter 21.1
- Gunicorn 20.0.4
- PostgreSQL 12.2
- Docker 20.10.2
- подробнее см. прилагаемый файл зависимостей requrements.txt
SECRET_KEY: Секретный ключ проекта. Задается в settings проекта Django.
DB_ENGINE: Тип базы данных. Используется PostgreSQL.
DB_NAME: Наименование базы данных.
POSTGRES_USER: Логин пользователя БД.
POSTGRES_PASSWORD: Пароль пользователя БД.
DB_HOST: Название контейнера с БД.
DB_PORT: Порт используемый БД. По умолчанию 5432.
git clone https://github.com/kellia1903/yamdb_final.git
2. Затем нужно перейти в папку yamdb_final/infra и создать в ней файл .env с переменными окружения, необходимыми для работы приложения.
cd yamdb_final/infra
touch .env
docker-compose up -d --build
docker-compose exec web python manage.py migrate
docker-compose exec web python manage.py createsuperuser
docker-compose exec web python manage.py collectstatic --no-input
7. Теперь можно наполнить БД тестовыми записями, файл fixtures.json находится в infra. Выполните команду:
docker cp fixtures.json <CONTAINER_ID_api_yamdb_web>:/app/
docker-compose exec web python manage.py loaddata fixtures.json
У проекта есть документация к API YaMDb. В ней описаны возможные запросы к API и структура ожидаемых ответов.
Для её просмотра нужно перейти на эндпоинт http://127.0.0.1:8000/redoc/
.