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

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

Данное руководство рассматривает различные методы установки Django на сервер Ubuntu 16.04, а также начало работы с этим фреймворком.

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

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

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

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

Требования

  • Сервер Ubuntu 16.04.
  • Пользователь с доступом к команде sudo (о создании такого пользователя можно прочитать здесь).

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

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

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

sudo apt-get update

После этого нужно установить пакет python-django. При использовании Python 2 введите:

sudo apt-get install python-django

В Python 3:

sudo apt-get install python3-django

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

django-admin --version
1.8.7

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

Глобальная установка через pip

Чтобы выполнить глобальную установку последней стабильной версии Django, используйте инструмент pip, менеджер пакетов Python. Чтобы установить pip, нужно сначала обновить индекс пакетов:

sudo apt-get update

Чтобы установить pip для Python 2, введите:

sudo apt-get install python-pip

Чтобы установить pip для Python 3, используйте:

sudo apt-get install python3-pip

Теперь менеджер пакетов pip установлен, можно приступать к установке Django. Для Python 2 введите:

sudo pip install django

Для Python 3:

sudo pip3 install django

Запросите версию программы, чтобы проверить установку.

django-admin --version
1.9.6

Как видите, pip предоставляет более новый релиз Django, чем репозиторий Ubuntu.

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

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

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

sudo apt-get update

Для Python 2 введите:

sudo apt-get install python-pip

Для Python 3:

sudo apt-get install python3-pip

После установки pip его можно использовать для установки пакета virtualenv.

Для Python 2 введите:

sudo pip install virtualenv

Для Python 3:

sudo pip3 install virtualenv

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

mkdir ~/newproject
cd ~/newproject

Создайте виртуальное окружение в каталоге проекта:

virtualenv newenv

Примечание: Замените условное название newenv своим названием.

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

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

source newenv/bin/activate

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

(newenv)username@hostname:~/newproject$.

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

pip install django

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

django-admin --version
1.9.6

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

deactivate

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

cd ~/newproject
source newenv/bin/activate

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

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

Сначала установите git при помощи стандартного менеджера пакетов apt. Обновите индекс пакетов:

sudo apt-get update

А затем установите git и менеджер пакетов pip, который понадобится позже для установки Django. Для Python 2 используйте:

sudo apt-get install git python-pip

Для Python 3:

sudo apt-get install git python3-pip

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

git clone git://github.com/django/django ~/django-dev

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

sudo pip install -e ~/django-dev

Для Python 3:

sudo pip3 install -e ~/django-dev

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

django-admin --version
1.10.dev20160516172816

Примечание: Этот метод можно применить в виртуальной среде и таким образом изолировать нестабильную версию Django.

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

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

Python 2

Для создания проекта используется команда django-admin:

django-admin startproject projectname
cd projectname

Эта команда создаст каталог projectname в текущем каталоге и поместит в него скрипт управления и другой каталог по имени projectname с текущим кодом.

Примечание: Находясь в каталоге проекта, созданном при помощи virtualenv, Django может разместить скрипты управления и внутренние каталоги в текущем каталоге при помощи следующей команды (обратите внимание на точку в конце стоки):

django-admin startproject projectname .

Чтобы сгенерировать базу данных в более новых версиях Django (по умолчанию используется SQLite), введите:

python manage.py migrate

Если команда migrate не работает, значит, текущая версия Django является несколько устаревшей и не поддерживает её. В таком случае используйте:

python manage.py syncdb

При этом Django попросит создать учётную запись администратора; укажите имя пользователя, электронный адрес и пароль.

При использовании команды migrate нужно создать учётную запись администратора вручную. Для этого наберите:

python manage.py createsuperuser

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

После этого переходите к разделу «Тестирование».

Python 3

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

django-admin startproject projectname
cd projectname

Эта команда создаст каталог projectname в текущем каталоге и поместит в него скрипт управления и другой каталог по имени projectname с текущим кодом.

Примечание: Находясь в каталоге проекта, созданном при помощи virtualenv, Django может разместить скрипты управления и внутренние каталоги в текущем каталоге при помощи следующей команды (обратите внимание на точку в конце стоки):

django-admin startproject projectname .

Чтобы создать БД в более новых версиях Django (по умолчанию используется SQLite), введите:

python3 manage.py migrate

Если команда migrate не работает, значит, текущая версия Django является устаревшей и не поддерживает её. В таком случае используйте:

python3 manage.py syncdb

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

При использовании команды migrate нужно создать учётную запись администратора вручную. Для этого наберите:

python3 manage.py createsuperuser

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

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

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

Важно! Этот сервер нужно использовать только в процессе разработки, для производства он не подходит.

Для начала нужно разблокировать порт сервера, защищенный брандмауэром UFW (о настройке брандмауэра – в этом руководстве). Для этого введите:

sudo ufw allow 8000

Запустите сервер разработки:

Python 2
python manage.py runserver 0.0.0.0:8000
Python 3
python3 manage.py runserver 0.0.0.0:8000

В браузере откройте IP-адрес, указав открытый порт:

server_ip_address:8000

Это откроет приветственную страницу Django.

It worked!
Congratulations on your first Django-powered page. […]

Если добавить в конец ссылки сегмент /admin, на экране появится страница входа для администратора.

server_ip_address:8000/admin

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

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

Заключение

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

Tags: , , , ,

2 комментария

Добавить комментарий