В этом проекты вы найдёте Dockerfile и docker-compose.yaml. Последний указанный файл запускает два контейнера: API отзывов о фильмах, книгах и песнях - yamdb, и базу данных PostgreSQL.
- Docker
P.S. Можно установить Docker Toolbox, если у вас Windows более раннего выпуска, нежели Windows 10.
- Склонируйте репозиторий
git clone https://github.com/MariaMozgunova/infra_sp2.git [<dir_name>]
; - Перейдите в папку командой
cd <dir_name>
; - Создайте файл конфигураций .env:
- сделайте копию шаблона файла .env
cp .env.template .env
; - присвойте актуальные значения всем полям.
- сделайте копию шаблона файла .env
- Запустите контейнеры
docker-compose up -d
; - Когда проект будет запущен, перейдите на
localhost:8000
и проверьте, что видите надпись 'Not Found'. Если вы установили Docker Toolbox, перейдите по адресуhttp://192.168.99.100:8000
.
Отлично! Всё работает.
- Выполните команду
docker container ls
, чтобы увидеть CONTAINER ID контейнера с полем IMAGE = infra_sp2_web; - Выполните вход в контейнер командой
docker exec -it <CONTAINER ID> bash
; - Выполните миграции
python3 manage.py migrate
; - В файле initial_data.json подготовлены начальные данные, загрузите их в базу
python manage.py loaddata initial_data.json
;
Если вы хотите создать свои тестовые данные, посмотрите статью RealPython https://realpython.com/data-migrations/#examples .
Также вы можете создать данные через shell, импортировав модели: python manage.py shell
.
Если вы, находясь в docker-контейнере, захотите создать суперпользователя, выполните следующие действия:
- Обновить список пакетов
apt update
; - Установите пакет sudo
apt-get install sudo
; - Создайте пользователя
adduser <username>
; - Добавьте нового пользователя в группу sudo
usermod -aG sudo <username>
.
В контейнере приложения выполните следующие команды:
python manage.py createsuperuser
;- введите почту и придумайте пароль.