Как установить django linux

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

Django – это открытый и свободный веб-фреймворк, написанный на Python, который основан на архитектуре MTV (model template view). Шаблон MTV – это индивидуальный подход Django к шаблону MVC (model–view–controller). Согласно Django Software Foundation, модель является единым источником данных; представление описывает данные, которые передаются пользователю с помощью функции обратного вызова Python; а шаблон – это то, что помогает Django динамически генерировать HTML.

Основными принципами Django являются масштабируемость, повторное использование и быстрая разработка. Слабая связанность Django позволяет компонентам приложений работать независимо друг от друга. Принцип DRY (Don’t repeat yourself) также является неотъемлемой частью Django.

Данный мануал поможет настроить среду разработки Django. Для этого нужно установить Python 3, pip 3, Django и virtualenv.

Требования

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

1: Установка Python и pip

Чтобы установить Python, нужно сначала обновить локальный репозиторий apt. Флаг –y автоматически отвечает «yes» на все запросы системы. Удалите его, если такое поведение для вас нежелательно.

sudo apt-get update && sudo apt-get -y upgrade

Когда будет предложено настроить grub-pc, можно просто нажать Enter и принять настройки по умолчанию.

Django Software Foundation рекомендует использовать Python 3. Чтобы установить эту версию, введите:

sudo apt-get install python3

Чтобы убедиться, что установка прошла успешно, запросите версию Python:

python3 -V
python 3.5.2

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

sudo apt-get install -y python3-pip

Чтобы убедиться, что установка прошла успешно, запросите версию pip:

pip3 -V
pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5)

Теперь вы можете быстро установить остальные необходимые пакеты.

2: Установка virtualenv

virtualenv – это виртуальная среда, которая позволяет устанавливать программное обеспечение и пакеты Python в пространстве разработки, изолированном от остальной системы. Такая удобная изоляция предотвращает взаимодействие конфликтующих пакетов или программного обеспечения.

Чтобы установить virtualenv, введите:

pip3 install virtualenv

Убедитесь, что установка virtualenv прошла успешно:

virtualenv —version
15.1.0

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

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

Существует три способа установки Django:

  1. С помощью virtualenv. Идеально подходит в случаях, когда нужно полностью изолировать приложение Django от остальной среды.
  2. Из исходного кода. Это позволяет получить последнюю версию Django (или более новую версию, чем в официальном репозитории системы). Обратите внимание: такую версию нужно самостоятельно поддерживать и обновлять, пакетный менеджер за нее не отвечает.
  3. Глобально с помощью pip.

В данном руководстве мы используем третий метод и установим Django глобально.

Для этого нужно просто ввести:

sudo pip3 install django

Запросите версию Django, чтобы убедиться, что установка прошла успешно:

django-admin —version
1.11.3

Теперь можно создать простой тестовый проект.

4: Создание простого проекта Django

Чтобы протестировать работу установки Django, создайте тестовый проект.

Настройка брандмауэра

Для начала нужно разблокировать порт приложения в брандмауэре UFW. Для этого введите команду:

sudo ufw allow 8000

Создание каталога проекта

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

Перейдите в этот каталог, чтобы начать работу над проектом.

Читайте также:  Боевой софт под linux

Создание проекта

Теперь можно сгенерировать приложение с помощью django-admin, утилиты командной строки Python. Затем можно создать структуру каталогов для тестового веб-сайта с помощью команды startproject.

В каталоге test-django-app запустите команду:

django-admin startproject testsite

Примечание: Команда django-admin startproject создаст одноименный каталог и пакет проекта в каталоге, в котором она была запущена. Параметр позволяет задать целевой каталог, если команда запускается в другом каталоге.

Теперь можно просмотреть полученные файлы проекта. Перейдите в каталог testsite и просмотрите его содержимое:

cd testsite
ls
manage.py testsite

Как видите, в каталоге есть файл manage.py и каталог testsite. Файл manage.py работает как django-admin и помещает пакет проекта в sys.path. Также он устанавливает переменную среды DJANGO_SETTINGS_MODULE, которая указывает на файл проекта settings.py.

Просмотрите сценарий manage.py в терминале.

Чтобы закрыть сценарий, просто нажмите q.

Перейдите в каталог testsite, чтобы просмотреть другие файлы проекта.

Команда выведет такие файлы:

__init__.py settings.py urls.py wsgi.py

Давайте рассмотрим подробнее каждый файл:

  • __init__.py работает как точка входа в проект Python.
  • settings.py содержит настройки установки Django.
  • urls.py содержит список urlpatterns, который обрабатывает URL-адреса и связывает их с видами.
  • wsgi.py содержит настройки WSGI (Web Server Gateway Interface), стандарта платформы Python для развертывания веб-серверов и приложений.

Примечание: Файл wsgi.py можно в любой момент настроить в соответствии с потребностями приложения.

Запуск и просмотр проекта

Теперь можно запустить сервер и просмотреть полученный веб-сайт.

Сначала нужно добавить ip-адрес сервера в список ALLOWED_HOSTS в файле settings.py, который находится в

Согласно документации Django, переменная ALLOWED_HOSTS содержит список имен хостов и доменов, которые может обслуживать этот сайт Django. Это мера безопасности, предотвращающая атаки подмены HTTP-заголовков Host.

Откройте файл в текстовом редакторе и добавьте свой адрес.

Найдите раздел Allowed Hosts и добавьте свой IP-адрес в квадратных скобках.

«»»
Django settings for testsite project.
Generated by ‘django-admin startproject’ using Django 1.11.3.
.
«»»
.
# SECURITY WARNING: don’t run with debug turned on in production!
DEBUG = True
# Edit the line below with your server IP address
ALLOWED_HOSTS = [‘your-server-ip’] .

Сохраните и закройте файл.

Затем вернитесь в каталог, где находится manage.py:

Запустите следующую команду:

python3 manage.py runserver your-server-ip:8000

Затем перейдите по этой ссылке, чтобы просмотреть скелет тестового сайта:

Вы увидите такую страницу:

It Worked!
Congratulations on your first Django-powered page!

Это значит, что установка и настройка фреймворка Django прошла успешно.

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

Источник

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

Django – это полноценный веб-фреймворк Python для создания приложений и динамических сайтов. Он позволяет значительно ускорить процесс разработки и развёртывания приложения, беря на себя общее структурирование кода.

Этот мануал поможет вам установить Django на сервер Ubuntu 20.04, а также научит работать с этим фреймворком.

Методы установки Django

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

Вот основные методы:

  • Глобальная установка Django из пакета. Официальный репозиторий Ubuntu предоставляет пакеты Django, которые можно быстро установить при помощи менеджера apt. Этот метод очень прост, но не так гибок, как другие. Кроме того, репозиторий может содержать устаревшую версию Django.
  • Установка через pip в виртуальную среду. Пакеты venv и virtualenv позволяют создавать автономные среды для разных проектов. Благодаря этому выможете установить Django в каталог проекта, не повлияв на остальную систему, включая другие пользовательские настройки и проекты. В большинстве случаев это самый практичный и гибкий метод установки и работы с Django, потому рекомендуется использовать именно его.
  • Установка разрабатываемой версии с помощью Git. Чтобы установить последнюю разрабатываемую версию вместо стабильного релиза, нужно клонировать код из репозитория git. Это предоставит новейшие функции и исправления программы; установить такую версию можно в виртуальную среду. Но имейте в виду: разрабатываемые версии нестабильны.
Читайте также:  Русификатор для windows sp3

Выберите наиболее подходящий вариант установки Django и следуйте инструкциям соответствующего раздела этого мануала.

Требования

Для работы вам понадобится сервер Ubuntu 20.04, полностью настроенный по этому мануалу.

Глобальная установка Django из пакета

Установка Django из официального репозитория Ubuntu очень проста.

Для начала нужно обновить индекс пакетов при помощи apt:

sudo apt update

После этого нужно узнать, какая версия Python установлена на вашем сервере. Сервер 20.04 по умолчанию поставляется с Python 3.8. Вы можете проверить это:

python3 -V
Python 3.8.2

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

sudo apt install python3-django

Убедитесь, что установка прошла успешно:

django-admin —version
2.2.12

Если команда вернула версию установленного фреймворка, значит, установка прошла успешно. Обратите внимание: это не самая свежая версия Django. Стандартные репозитории системы обычно содержат немного устаревшие пакеты.

Теперь можете приступать к созданию тестового проекта.

Установка Django с помощью pip

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

Для начала нужно обновить индекс пакетов:

sudo apt update

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

python3 -V
Python 3.8.2

Теперь установите pip и venv из репозитория Ubuntu:

sudo apt install python3-pip python3-venv

Теперь нужно создать индивидуальную виртуальную среду для вашего проекта. Создайте каталог и перейдите в него (вместо newproject укажите название вашего проекта):

Создайте виртуальную среду в каталоге проекта с помощью команды python. Мы назовем ее условно my_env, но лучше использовать более описательное имя, например, имя вашего проекта.

python3 -m venv my_env

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

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

После этого командная строка изменится. Это сообщает о том, что виртуальная среда была включена. Она будет выглядеть примерно так:

В новой среде используйте pip для установки Django. Вне зависимости от того, какую версию Python вы используете, в виртуальной среде нужно запускать команду pip, а не pip3. Кроме того, при локальной установке не нужно использовать sudo.

pip install django

Убедитесь, что программа установлена успешно.

django-admin —version
3.0.8

Ваша версия может отличаться.

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

После этого командная строка примет свой стандартный вид. Чтобы снова включить виртуальную среду, вернитесь в каталог проекта и введите эти команды:

/newproject
source my_env/bin/activate

Установка разрабатываемой версии Django с помощью Git

Чтобы установить разрабатываемую версию Django, загрузите её из репозитория Git.

Обновите индекс пакетов:

sudo apt update

Проверьте версию Python, установленную на сервере:

python3 -V
Python 3.8.2

А затем установите менеджер пакетов pip и пакет venv:

sudo apt install python3-pip python3-venv

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

/django-dev в домашнем каталоге, введите:

git clone git://github.com/django/django

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

Создайте виртуальную среду для вашего проекта:

python3 -m venv my_env

После этого установите репозиторий с помощью менеджера pip. Используйте флаг -e для установки в режиме editable, это необходимо при установке через систему контроля версий.

Убедитесь, что установка прошла успешно:

django-admin —version
3.2

Версия может отличаться.

Теперь у вас есть последняя (но нестабильная) версия Django в виртуальной среде.

Читайте также:  Who created the windows

Создание простого проекта Django

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

Для начала создайте каталог для проекта и перейдите в него.

Создайте виртуальную среду:

python3 -m venv my_env

pip install django

Чтобы собрать проект, используйте команду django-admin и startproject. В мануале проект условно называется djangoproject (а вы укажите название своего проекта). Команда startproject сделает следующее:

  • создаст каталог в текущем рабочем каталоге
  • поместит в него скрипт управления manage.py и еще один каталог (с именем проекта) с текущим кодом.

Чтобы избежать большого количества вложенных каталогов, добавьте в команду точку – и тогда Django поместит скрипт и внутренние каталоги в текущий каталог.

django-admin startproject djangoproject .

Чтобы переместить БД (по умолчанию это SQLite), используйте команду migrate с manage.py. При перемещении все внесенные ранее изменения в модели Django будут применены к схеме БД.

Чтобы начать миграцию, введите:

python manage.py migrate

Вы получите такой вывод:

Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial. OK
Applying auth.0001_initial. OK
Applying admin.0001_initial. OK
Applying admin.0002_logentry_remove_auto_add. OK
Applying admin.0003_logentry_add_action_flag_choices. OK
Applying contenttypes.0002_remove_content_type_name. OK
Applying auth.0002_alter_permission_name_max_length. OK
Applying auth.0003_alter_user_email_max_length. OK
Applying auth.0004_alter_user_username_opts. OK
Applying auth.0005_alter_user_last_login_null. OK
Applying auth.0006_require_contenttypes_0002. OK
Applying auth.0007_alter_validators_add_error_messages. OK
Applying auth.0008_alter_user_username_max_length. OK
Applying auth.0009_alter_user_last_name_max_length. OK
Applying sessions.0001_initial. OK

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

python manage.py createsuperuser

Команда запросит имя пользователя, почту и пароль.

Настройка ALLOWED_HOSTS

Чтобы успешно протестировать свое приложение, вы должны изменить одну из директив в параметрах Django.

Откройте конфигурационный файл:

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

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

ALLOWED_HOSTS = [‘your_server_ip_or_domain’, ‘your_second_ip_or_domain’, . . .]

Сохраните и закройте файл.

Тестирование сервера разработки

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

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

sudo ufw allow 8000

Теперь запустите сервер:

python manage.py runserver your_server_ip:8000

Откройте свой IP-адрес с портом :8000 в брандмауэре:

Если все работает хорошо, вы увидите:

The install worked successfully! Congratulations!

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

На экране появится форма входа, которая запросит имя и пароль пользователя.

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

Поработав со своим тестовым проектом, остановите сервер разработки, введя в терминал CTRL-C. Этот стандартный проект Django в дальнейшем можно использовать как шаблон для разработки уникального сайта. Чтобы узнать, как создавать пользовательские приложения и настроить свой сайт, читайте документацию Django.

Заключение

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

Источник

Оцените статью