Яндекс Практикум. Проект 15-го спринта: запуск docker-compose.
Проект YaMDb
собирает отзывы пользователей на произведения из категорий: «Книги», «Фильмы», «Музыка».
- Произведения делятся на категории. Список категорий может быть расширен администратором;
- Произведения, фильмы и музыка не хранятся в приложении;
- В каждой категории есть произведения: книги, фильмы или музыка;
- Произведению может быть присвоен жанр из списка предустановленных. Новые жанры может создавать только администратор;
- Пользователи могут оставлять отзывы и ставить оценку произведениям. Из пользовательских оценок формируется рейтинг. На одно произведение можно оставить только один отзыв.
-
Проверить наличие Docker
Прежде чем приступать к работе, убедиться что Docker установлен, для этого ввести команду:
docker -v
В случае отсутствия, скачать Docker Desktop для Mac или Windows. Docker Compose будет установлен автоматически.
В Linux проверить, что установлена последняя версия Compose.
Также можно воспользоваться официальной инструкцией.
-
Клонировать репозиторий на локальный компьютер
git clone https://github.com/Ramiras123/infra_sp2.git
-
В корневой директории создать файл
.env
, согласно примеру:DB_ENGINE=django.db.backends.postgresql DB_NAME=postgres POSTGRES_USER=postgres POSTGRES_PASSWORD=postgres DB_HOST=db DB_PORT=5432
-
Запустить
docker-compose
Выполнить из корневой директории команду:
docker-compose up -d
-
Заполнить БД
Создать и выполнить миграции:
docker-compose exec web python manage.py makemigrations --noinput docker-compose exec web python manage.py migrate --noinput
-
Подгрузить статику
docker-compose exec web python manage.py collectstatic --no-input
-
Заполнить БД тестовыми данными
Для заполнения базы использовать файл
fixtures.json
, в директорииinfra_sp2
. Выполните команду:docker-compose exec web python manage.py loaddata fixtures.json
-
Создать суперпользователя
docker-compose exec web python manage.py createsuperuser
-
Остановить работу всех контейнеров
docker-compose down
-
Пересобрать и запустить контейнеры
docker-compose up -d --build
-
Мониторинг запущенных контейнеров
docker stats
-
Остановить и удалить контейнеры, тома и образы
docker-compose down -v