- clone project:
[email protected]:AndIsaev/Admin_panel_sprint_2.git
-
create new database postgresql in your host
-
fill in the file .env.default with parametrs your database in movies_admin:
DB_ENGINE=django.db.backends.postgresql_psycopg2
DB_NAME=db
POSTGRES_USER=postgres
POSTGRES_PASSWORD=some_password
DB_HOST=host.docker.internal (if you use macos) or 'localhost'
DB_PORT=5432
SECRET_KEY= 'your secret key'
- go to movies_admin and run command:
docker compose up
- create superuser:
docker-compose exec web python manage.py collectstatic --noinput --clear
- load static
docker-compose run --entrypoint="/bin/bash -c" web "python manage.py createsuperuser"
- go to url in your browser:
http://localhost/admin/
В качестве второго задания предлагаем расширить проект «Панель администратора»: запустить приложение через WSGI/ASGI, настроить отдачу статических файлов через Nginx и подготовить инфраструктуру для работы с Docker. Для этого перенесите в репозиторий код, который вы написали в первом спринте, и выполните задания из папки tasks
.
- Приложение запускается под управлением сервера WSGI/ASGI.
- Для отдачи статических файлов используется Nginx.
- Виртуализация осуществляется в Docker.
- Cервер WSGI/ASGI — сервер с запущенным приложением.
- Nginx — прокси-сервер, который является точкой входа для web-приложения.
- PostgreSQL — реляционное хранилище данных.
- ETL — механизм обновления данных между PostgreSQL и ES.
- Приложение должно быть запущено через WSGI/ASGI.
- Все компоненты системы находятся в Docker.
- Отдача статических файлов осуществляется за счёт Nginx.
- Для работы с WSGI/ASGI-сервером база данных использует специального юзера.
- Для взаимодействия между контейнерами используйте docker compose.