Гид по технологиям

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

• 7 min read • Разработка • Обновлено 23 Nov 2025
Установка Django 3.0 на Ubuntu 20.04
Установка Django 3.0 на Ubuntu 20.04

Важно: этот гайд рассчитан на Ubuntu 20.04 с Python 3 по умолчанию. Для продакшна используйте виртуальные окружения, выключайте DEBUG и настраивайте HTTPS.

Логотип Django на фоне терминала и кода

О чём эта статья

Django — веб‑фреймворк на Python, реализующий подход MVC (в Django часто говорят «MTV» — Model, Template, View). Он помогает быстро разрабатывать сайты и содержит встроенные механизмы защиты от распространённых уязвимостей: SQL‑инъекций, XSS, CSRF и clickjacking.

В этом руководстве вы узнаете:

  • как подготовить Python и pip на Ubuntu 20.04;
  • четыре способа установки Django (apt, pip, virtualenv, git);
  • как создать и запустить простой проект;
  • рекомендации по безопасности, отладке и развёртыванию.

Требования и термины в одну строку

  • Ubuntu 20.04 — операционная система; Python 3 — интерпретатор; pip — менеджер пакетов Python; virtualenv — инструмент для создания изолированных окружений.

Что нужно подготовить

  • Сервер или рабочая машина с Ubuntu 20.04;
  • Доступ к терминалу с правами sudo;
  • Подключение к Интернету для загрузки пакетов.

Шаг 1 — Настройка Python и pip

Ubuntu 20.04 по умолчанию содержит Python 3. Команда “python” может отсутствовать и использоваться как “python3”. Проверим:

python

Если получаете ошибку вроде:

Command 'python' not found, did you mean:
  command 'python3' from deb python3
  command 'python' from deb python-is-python3

создайте альтернативу, чтобы команда python ссылалась на python3:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1

Проверьте версию:

python --version

Ожидаемый вывод (пример):

Python 3.8.2

Далее установим pip — менеджер пакетов для Python:

sudo apt update
sudo apt install python3-pip -y

Сделаем pip по умолчанию:

sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1
pip --version

Пример вывода:

pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)

Установка Python и pip на Ubuntu

Примечание: в некоторых окружениях предпочтительнее не менять системные ссылки и вызывать python3/pip3 напрямую.

Шаг 2 — Установка Django Framework

Существует несколько способов установки Django. Ниже — подробное описание каждого с плюсами и минусами.

Установка через apt

Ubuntu 20.04 содержит пакет python3-django в официальном репозитории. Его установка простая, но версия может быть не самой свежей.

Проверим пакет:

apt show python3-django

Установим:

sudo apt install python3-django -y

Проверка версии:

django-admin --version

Установка Django через apt (пример)

Плюсы:

  • простая установка и поддержка обновлений через apt;
  • интеграция с системным Python.

Минусы:

  • часто устаревшая версия;
  • 적용ение для продакшна ограничено из-за версий библиотек.

Установка через pip (PyPI)

Установка через pip даёт гибкость: вы выбираете конкретную версию Django.

Установка Django 3.0:

pip install django==3.0.0

Проверка:

django-admin --version

Альтернативная проверка в интерактивном режиме Python:

python
import django
print(django.get_version())

Установка Django через pip

Плюсы:

  • контроль версии;
  • подходит для разработки;

Минусы:

  • глобальная установка может конфликтовать с системными пакетами. Рекомендуется virtualenv.

Установка с использованием virtualenv (рекомендуется)

virtualenv создаёт изолированное окружение Python. Это лучший выбор для разработки и развёртывания.

Установка virtualenv:

pip install virtualenv

Создание окружения и активация:

virtualenv myenv
cd myenv/
source bin/activate

Установка Django внутри окружения:

pip install django==3.0.0

Проверка:

django-admin --version

Выход из окружения:

deactivate

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

Плюсы:

  • изоляция зависимостей по проектам;
  • можно использовать разные версии Python и Django на одной машине.

Минусы:

  • требует дополнительного шага активации; нельзя забывать обновлять зависимости (requirements.txt).

Установка из репозитория Git (разработка)

Если нужен девелоперский (master/develop) код Django:

sudo apt install git -y
virtualenv django-git
cd django-git/
source bin/activate
git clone git://github.com/django/django django-dev
pip install -e django-dev

Проверка:

django-admin --version

Установка Django из исходников

Преимущества:

  • доступ к последним изменениям и фиксам;
  • возможность вносить правки в код фреймворка.

Ограничения:

  • нестабильность, возможны регрессы; не рекомендуется для продакшна.

Сравнение методов

МетодПростотаКонтроль версииИзоляцияПодходит для продакшна
apt++++—частично
pip (глобально)+++++—нет
virtualenv + pip++++++++да
git (dev)+++++ (bleeding edge)+нет (для prod)

Шаг 3 — Создание первого проекта Django

Рекомендуется выполнять создание проекта внутри virtualenv.

Создадим окружение и установим Django 3.0:

virtualenv myproject
cd myproject/
source bin/activate
pip install django==3.0.0

Создадим проект mysite:

django-admin startproject mysite

Перейдём в каталог проекта и посмотрим структуру:

cd mysite/; tree

Редактируем settings.py:

vim mysite/settings.py

Добавьте IP/хост сервера в ALLOWED_HOSTS:

ALLOWED_HOSTS = ["your-server-ip"]

Сделаем миграции по умолчанию (SQLite):

python manage.py migrate

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

python manage.py createsuperuser

Следуйте инструкциям для ввода имени, email и пароля.

Миграции и создание суперпользователя

Шаг 4 — Запуск проекта

Запустим встроенный dev‑сервер (для разработки):

python manage.py runserver 0.0.0.0:8000

Откройте в браузере http://:8000/ , вы увидите стандартную стартовую страницу Django. Для входа в админку — http://:8000/admin/ .

Запуск и главная страница Django

Стартовая страница Django

Вход в админку Django

Панель администратора Django

Рекомендации по безопасности и развёртыванию

  • Выключите DEBUG в settings.py перед развёртыванием: DEBUG = False.
  • Обязательно заполните ALLOWED_HOSTS реальными доменами/IP.
  • Храните SECRET_KEY в переменных окружения, а не в репозитории.
  • Для продакшна не используйте встроенный runserver — применяйте WSGI/ASGI (Gunicorn, uWSGI, Daphne) за обратным прокси (Nginx).
  • Включите HTTPS и HSTS.
  • Настройте бэкапы базы данных.

Пример запуска с Gunicorn и Nginx — краткая последовательность:

  1. Установите gunicorn в виртуальном окружении: pip install gunicorn.
  2. Создайте systemd‑сервис для gunicorn, который запускает приложение.
  3. Настройте Nginx как обратный прокси и проксируйте запросы на socket или порт gunicorn.
  4. Получите сертификат TLS (например, Let’s Encrypt).

Важно: настройки зависят от специфики проекта. Для критичных систем привлекайте инженера по безопасности.

Типичные ошибки и как их исправить

  • “django-admin: command not found” — проверьте, активировано ли virtualenv, и что django установлен в текущем окружении.
  • “ModuleNotFoundError: No module named ‘django’” — вы не в том окружении, установите или активируйте virtualenv.
  • Ошибка с ALLOWED_HOSTS — добавьте хост/IP в ALLOWED_HOSTS или временно установите Debug для диагностики.
  • Проблемы с базой данных — проверьте настройки DATABASES в settings.py и права пользователя базы.

Что выбрать: apt, pip, virtualenv или git — метод-помощник

Если цель — быстро проверить фреймворк на тестовой машине — apt подойдёт. Если нужен контроль над версией и повторяемость — используйте virtualenv + pip. Если вам нужен последний код для разработки фреймворка — git.

Mermaid‑дерево решений:

flowchart TD
  A[Нужно установить Django?] --> B{Для чего}
  B -->|Тест/демо| C[apt]
  B -->|Проект| D[virtualenv + pip]
  B -->|Разработка самого Django| E[git + pip -e]
  D --> F[Создать requirements.txt и репозиторий]

Чек-лист ролей

Разработчик:

  • Создать виртуальное окружение;
  • Зафиксировать версии в requirements.txt;
  • Убедиться, что DEBUG отключён в продакшне;
  • Написать миграции и протестировать их.

Системный администратор / DevOps:

  • Настроить systemd‑сервис для gunicorn/uWSGI;
  • Настроить Nginx и HTTPS;
  • Настроить бэкапы базы и файлов;
  • Настроить мониторинг и логирование.

Контролёр качества (QA):

  • Проверить, что админка доступна;
  • Проверить основные вьюхи и формы на CSRF/XSS;
  • Прогнать миграции на чистой БД.

Советы по совместимости и миграции

  • Django 3.0 требует Python 3.6 и выше. На Ubuntu 20.04 Python 3.8 доступен по умолчанию.
  • При переходе между версиями Django проверьте изменения в release notes и тестируйте приложение.
  • Используйте миграции (python manage.py makemigrations + migrate) и храните их в системе контроля версий.

Мини‑методология выбора и развёртывания

  1. Определите требования проекта: версия Django, СУБД, требования безопасности.
  2. Создайте reproducible environment: virtualenv/venv + requirements.txt.
  3. Разверните staging, выполните тесты и нагрузочные проверки.
  4. Перенесите на production с использованием WSGI/ASGI и обратного прокси.

Краткий словарь (1‑строчные определения)

  • virtualenv — инструмент для создания изолированных Python‑окружений.
  • pip — менеджер пакетов Python.
  • runserver — встроенный в Django сервер разработки.
  • gunicorn/uWSGI — WSGI‑серверы для продакшна.

Часто задаваемые вопросы

Какую версию Python требуется для Django 3.0?

Django 3.0 поддерживает Python 3.6 и выше. На Ubuntu 20.04 доступен Python 3.8.

Можно ли использовать apt для продакшн‑развёртывания?

apt удобен для простоты, но пакет может быть устаревшим. Для продакшна рекомендуется virtualenv + pip с фиксированными версиями.

Как хранить секреты (SECRET_KEY, пароли БД)?

Не храните секреты в settings.py в репозитории. Используйте переменные окружения, vault‑решения или файлы конфигурации с ограниченным доступом.

Краткое резюме

Вы узнали, как установить Django 3.0 на Ubuntu 20.04 четырьмя способами, как создать и запустить проект и какие шаги предпринять для безопасного развёртывания. На практике рекомендуют virtualenv + pip для изоляции и контроля версий.


Краткое руководство для копирования шагов:

  1. sudo apt update && sudo apt install python3-pip python3-venv -y
  2. python3 -m venv myenv && source myenv/bin/activate
  3. pip install django==3.0.0
  4. django-admin startproject mysite
  5. cd mysite && python manage.py migrate && python manage.py createsuperuser
  6. python manage.py runserver 0.0.0.0:8000

Небольшая памятка: для продакшна замените runserver на gunicorn/uWSGI, настройте Nginx и включите HTTPS.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро