Django 5 для начинающих

Прогресс по курсу:  9/1004

9.2 Установка виртуального окружения, Gunicorn и списка зависимостей
5 из 16 шагов пройдено
0 из 33 баллов  получено

Установка Gunicorn и списка зависимостей

 

Для начала активируем виртуальное окружение:

source env/bin/activate


Теперь можно установить сервер приложений Gunicorn:

pip install gunicorn


А затем пакеты из списка зависимостей requirements.txt:

pip install -r requirements.txt


Все необходимые, для проекта, пакеты установлены, в том числе и Django:


Теперь можно деактивировать виртуальное окружение:

deactivate


Установка сервера приложений Gunicorn и необходимых, для проекта, пакетов завершена.


  • Комментария
Будьте вежливы и соблюдайте наши принципы сообщества. Пожалуйста, не оставляйте решения и подсказки в комментариях, для этого есть отдельный форум.
Оставить комментарий

Подскажите, пожалуйста, почему выбран именно Gunicorn, чем он выделяется?

Для каких проектов подходит?

@ilya_kutaev, простота настройки, довольно быстрый, хорошо справляется с высокими нагрузками и мало потребляет ресурсов сервера. Связка Gunicorn+NGINX довольно часто применяется для Django-проектов. NGINX обеспечивает выдачу статичного контента, и работает в качестве обратного прокси для сервера приложений, и так-же обеспечивает GZIP-сжатие контента. Кроме того использование связки Gunicorn+NGINX решает проблему медленных клиентов, серверу приложений не нужно ждать пока клиент получит ответ, он мгновенно передаёт ответ обратному прокси-серверу, и после этого может обрабатывать следующие запросы. А уже обратный прокси-сервер будет передавать ответ медленному клиенту.

@Дмитрий_Селезнев, Спасибо, исчерпывающе!

@Шамбер_Егор, я сейчас попытаюсь отредачить requirements.txt и поставить последнюю предлагаемую версию django надеюсь не накуралесю 

@Шамбер_Егор, попробуйте на 5.0.3 заменить.

@Шамбер_Егор, можно отредактировать файл requirements.txt(прямо на сервере), добавить в него только основные пакеты, остальные будут автоматически поставлены:

Django
django-taggit
psycopg
psycopg-binary
django-bootstrap5
social-auth-app-django
markdown
python-dotenv
Pillow
django-summernote
djangorestframework
drf-spectacular

или попробуйте так отредактировать:

asgiref==3.7.2
attrs==23.2.0
bleach==6.1.0
certifi==2024.2.2
cffi==1.16.0
charset-normalizer==3.3.2
cryptography==42.0.5
defusedxml==0.8.0rc2
Django==5.0.3
django-bootstrap5==23.4
django-summernote==0.8.20.0
django-taggit==5.0.1
djangorestframework==3.15.0
drf-spectacular==0.27.1
idna==3.6
inflection==0.5.1
jsonschema==4.21.1
jsonschema-specifications==2023.12.1
Markdown==3.6
oauthlib==3.2.2
pillow==10.2.0
psycopg==3.1.18
psycopg-binary==3.1.18
pycparser==2.21
PyJWT==2.8.0
python-dotenv==1.0.1
python3-openid==3.2.0
PyYAML==6.0.1
referencing==0.34.0
requests==2.31.0
requests-oauthlib==1.4.0
rpds-py==0.18.0
six==1.16.0
social-auth-app-django==5.4.0
social-auth-core==4.5.3
sqlparse==0.4.4
typing_extensions==4.10.0
tzdata==2024.1
uritemplate==4.1.1
urllib3==2.2.1
webencodings==0.5.1

@Дмитрий_Селезнев, я изменил на 4.2.11 ибо он был в огромном красном предложеном списке вроде пока ничего не разрушилось, надеюсь так и продолжится

INFO: pip is looking at multiple versions of about-time to determine which version is compatible with other requirements. This could take a while.
ERROR: Cannot install -r requirements.txt (line 3) and idna==2.6 because these package versions have conflicting dependencies.

The conflict is caused by:
    The user requested idna==2.6
    anyio 3.6.2 depends on idna>=2.8

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts
 

ошибка

@Михаил_Костарев, выложите содержимое файла requirements.txt

@Михаил_Костарев, попробуйте отредактировать файл requirements.txt:
Выполните команду:

vi requirements.txt

 Переведите Vi в режим ввода, нажав клавишу i, и отредактируйте строку idna==2.6, замените её на idna==3.4

Затем сохраните файл, для этого нажмите клавишу Esc и введите команду :wq, после этого нажмите клавишу Enter.

После этого повторно запустите команду установки, предварительно убедившись что виртуальное окружение запущено:

pip install -r requirements.txt