Назад в блог

Установка веб-фреймворка Django на Ubuntu 20.04

Установка веб-фреймворка Django на Ubuntu 20.04

Django — это высокоуровневый веб-фреймворк, который позволяет быстро разрабатывать безопасные и поддерживаемые веб-сайты. Это бесплатный фреймворк с открытым исходным кодом, написанный на Python. Django также популярен благодаря дополнительным возможностям, таким как производительность, безопасность, масштабируемость, переносимость и простота обслуживания.

В этом руководстве будет показано, как установить Django и настроить простое веб-приложение на Ubuntu 20.04.

Django на Ubuntu

Существует несколько способов установки Django в системе. Каждый метод подходит для разных целей.

  • Глобальная установка: Django легко доступен в официальных репозиториях пакетов Ubuntu. Мы можем установить его напрямую с помощью пакетного менеджера APT. Хотя этот метод установки прост, он предлагает меньше гибкости, чем другие методы. Более того, он может не содержать последнюю версию фреймворка.
  • Установка с использованием pip в виртуальном окружении: Используя такие инструменты, как venv и virtualenv, мы можем создать виртуальное окружение и установить Django туда. Преимущество этого подхода в том, что он не влияет на основную систему. Он также позволяет настраивать конфигурацию и пакеты для каждого проекта отдельно. Это наиболее практичный и рекомендуемый метод работы с Django.
  • Установка версии Django для разработки: Django также доступен на GitHub. Последняя версия для разработки будет содержать новейшие функции и исправления. Однако это сопряжено с потенциальными проблемами производительности и стабильности.

Для этого руководства вам понадобится правильно настроенный сервер Ubuntu. Если у вас еще нет сервера Ubuntu, вы можете воспользоваться нашим руководством по настройке собственного сервера Ubuntu.

Установка Django на Ubuntu

1. Глобальная установка с помощью пакетного менеджера

Django легко доступен в официальных репозиториях пакетов. Процесс установки довольно прост. Сначала обновите индекс пакетов APT:

Затем проверьте установленную версию Python. По умолчанию Ubuntu 20.04 поставляется с Python 3.8:

Теперь мы готовы установить Django:

Мы можем проверить, была ли установка успешной. Запустите следующую команду, чтобы проверить версию Django:

django-admin

Это подтверждает, что Django успешно установлен. Обратите внимание, что эта версия Django не является последним стабильным выпуском. На момент написания статьи последней доступной версией Django является v3.2.5 (LTS-выпуск).

2. Установка Django с помощью pip (в виртуальном окружении)

Это рекомендуемый способ установки Django, так как он обладает наибольшей гибкостью. Мы создадим виртуальное окружение с помощью модуля venv, который входит в стандартную библиотеку Python 3. Он позволяет создавать виртуальные окружения Python и устанавливать пакеты Python без внесения изменений в другие части системы. Вы можете иметь множество виртуальных окружений с уникальными конфигурациями.

Давайте начнем. Сначала нам понадобятся Python-модули pip и venv:

Модули успешно установлены. Теперь мы создадим специальный каталог для виртуального окружения:

Затем перейдите в новый каталог:

Теперь мы можем указать venv создать виртуальное окружение внутри этого каталога. Что касается имени окружения, оно должно быть информативным:

Модуль venv создаст копию Python и pip в изолированной структуре каталогов внутри каталога проекта. Он будет содержать каталог с выбранным именем, в котором находится иерахия файлов, куда устанавливаются все пакеты.

Чтобы установить дополнительные пакеты, нам нужно активировать окружение:

Приглашение командной строки должно измениться примерно так:

sample_project

Внутри виртуального окружения мы теперь можем установить Django:

Проверьте, прошла ли установка успешно:

Чтобы выйти из виртуального окружения, выполните следующую команду:

deactivate

3. Установка разрабатываемой версии Django

Разрабатываемая версия Django доступна напрямую на GitHub. Мы будем использовать git для её клонирования и развёртывания в виртуальном окружении.

Сначала убедитесь, что у вас установлены необходимые инструменты. Следующая команда установит venv и pip (модули Python) и git:

Затем клонируйте репозиторий Django. Он будет содержать все последние функции и исправления ошибок (в ущерб стабильности). Мы клонируем его в каталог ~/django-dev:

Перейдите в каталог клонированного репозитория:

После этого создайте виртуальное окружение с помощью модуля Python venv :

Затем активируйте виртуальное окружение:

Теперь мы можем установить Django, который клонировали с GitHub. Здесь флаг -e указывает на режим «редактирования» (editable) для возможности установки из системы контроля версий:

Наконец, проверьте установку:

django-admin --version

Пример проекта Django

До сих пор мы демонстрировали, как установить Django в системе. Теперь пришло время применить Django на практике. В этом разделе мы покажем, как создать пример проекта Django. Пример проекта будет создан внутри виртуального окружения.

Создайте каталог для примера проекта:

Перейдите в каталог проекта:

Затем используйте модуль venv для создания виртуального окружения Python:

Виртуальное окружение готово. Активируйте его:

Installing Django image 5

Мы можем установить Django внутри окружения:

Мы можем использовать django-admin для создания основы проекта. В данном случае пример проекта будет называться sampleproject. Проект будет иметь каталог внутри каталога окружения, содержащий все необходимые файлы.

  • manage.py: управляющий скрипт, который администрирует различные задачи, специфичные для Django.
  • пример проекта: каталог с именем проекта, содержащий непосредственно код проекта.

Однако мы не хотим создавать паутину из слишком большого количества вложенных каталогов. Поэтому укажите Django разместить файлы и каталоги в текущем каталоге:

sampleproject

Следующим шагом является миграция базы данных. По умолчанию Django использует SQLite. Миграции применяют любые изменения, внесенные в модели Django, к схеме базы данных. Выполните следующую команду для миграции базы данных:

Наконец, мы создадим администратора для использования панели управления Django. Выполните следующую команду:

Вам будет предложено ввести имя пользователя, адрес электронной почты и пароль для пользователя.

Installing Django image 4

ALLOWED_HOSTS в настройках Django

Чтобы протестировать приложение, нам нужно изменить определенную директиву в настройках Django. Откройте файл settings.py в текстовом редакторе:

Нас интересует директива ALLOWED_HOSTS. Она описывает список адресов или доменных имен, которые могут подключаться к экземпляру Django. Любой входящий запрос от хоста, которого нет в списке, вызовет исключение. Это требуется Django для предотвращения определенных классов уязвимостей безопасности.

Внутри квадратных скобок перечислите IP-адреса или доменные имена, связанные с сервером Django. Каждый элемент должен быть указан в кавычках и разделен запятой (,). Вот как будет выглядеть структура директивы:

ALLOWED_HOSTS

Сохраните список и закройте редактор.

Тестирование сервера

Теперь мы можем запустить сервер разработки Django. Он представит чистый проект Django. Обратите внимание, что его следует использовать только для целей разработки. Для полноценного развертывания следуйте официальному руководству Django по развертыванию.

Перед доступом к серверу разработки убедитесь, что брандмауэр разрешает доступ к порту 8000. Если вы следуете руководству по настройке сервера Ubuntu, то укажите UFW открыть порт 8000 для связи:

sudo

UFW — это популярный брандмауэр, доступный во всех основных дистрибутивах Linux. Вот руководство, объясняющее различные основы UFW. Сервер разработки готов к работе. Запустите сервер:

python manage.py runserver

Затем перейдите по IP-адресу сервера на порт 8000 в веб-браузере. Вы попадете на приветственную страницу Django:

Installing Django image 3

Чтобы получить доступ к панели администратора Django, добавьте /admin/ в конец URL-адреса:

Введите имя пользователя и пароль администратора для доступа к разделу администрирования:

Installing Django image 2

Installing Django image 1

Вы можете остановить сервер, нажав CTRL-C в терминале.

Заключение

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

Приятной работы!

author

Hark Labs

Автор · CloudSigma

Preslav Dobrev — креативный дизайнер в CloudSigma, сосредоточенный на формировании последовательного корпоративного образа с помощью традиционных и инновационных маркетинговых каналов. Он умело сочетает художественное видение со стратегическим маркетингом, создавая убедительные истории бренда.

Комментарии

Комментариев пока нет. Будьте первым.