Приложение состоит из нескольких сервисов, запущенных в связанных контейнерах:
- Django-проекта
- базы данных Postgres
- сервера Gunicorn и nginx, отвечающие за раздачу статики
- Python 3.7
- Django
- Django REST Framework
- SQLite3
- Simple-JWT
- gunicorn
- psycopg2-binary
- docker
- docker-compose
- Клонировать репозиторий git clone [email protected]:KseniyaGurevich/infra_sp2.git
- Создайте файл .env (путь infra_sp2/infra/nginx) с переменными окружения для работы с базой данных :
DB_ENGINE=django.db.backends.<указываем, с какой БД работаем>
DB_NAME=<Имя базы данных>
POSTGRES_USER=<логин для подключения к базе данных>
POSTGRES_PASSWORD=<пароль для подключения к БД>
DB_HOST=<название сервиса (контейнера)>
DB_PORT=<порт для подключения к БД>
- Запустите контейнеры:
docker-compose up -d
- Выполните миграции:
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
- Заполните базу данными:
docker-compose exec web python manage.py loaddata fixtures.json
- Теперь проект доступен по адресам:
http://localhost/
http://localhost/admin/ - админка
http://localhost/redoc/ - документация проекта