Как установить Python, Flask и Green Unicorn на Ubuntu 16.04 LTS

Долгосрочная поддержка (LTS) Ubuntu была выпущена в апреле 2016 года. Обновление 16.04 для Ubuntu известное как «Xenial Xerus» является первым изданием Ubuntu, содержащим Python 3 в качестве основной инсталляции Python. Мы можем использовать издание Ubuntu совместно с версией Python 3.5 для запуска нового прикладного веб проекта Flask и запустить его в Green Unicorn (Gunicorn).

Необходимые инструменты

Наш проект будет использовать издание Ubuntu 16.04 совместно с несколькими другими библиотеками. Вам не придется устанавливать эти инструменты пока что, мы рассмотрим этот момент немного позже. Для апрельской версии 2017 необходимо следующее:

  • Ubuntu 16.04.2 LTS (Xenial Xerus)
  • Python версия 3.5.1 (по умолчанию в Ubuntu 16.04.2)
  • Веб-фреймворк Flask версии 0.12
  • Green Unicorn (Gunicorn) версия 19.7.1

При работе на Mac OS X или Windows, используйте ПО для виртуализации, такое как Parallels или VirtualBox с файлом .iso Ubuntu. Нам подойдут версии 16.04 как для amd64, так и i386. Я пользуюсь amd64 для разработок и тестирования в данной статье.
После загрузки Ubuntu вы увидите следующее:
Как установить Python, Flask и Green Unicorn на Ubuntu 16.04 LTS
Открываем окно терминала для того, чтобы продолжить настройку.

Системные пакеты

Мы можем увидеть систему python3 для Ubuntu, и где она выполняется, при помощи следующих команд:

Как установить Python, Flask и Green Unicorn на Ubuntu 16.04 LTS
Установка нашей Ubuntu требует несколько системных пакетов. Мы получим запрос пароля суперпользователя, поскольку для установки пакетов через apt необходим ограниченный системный доступ.

Как установить Python, Flask и Green Unicorn на Ubuntu 16.04 LTS
Введите y, чтобы дать установке системного пакета делать свою работу.
Как установить Python, Flask и Green Unicorn на Ubuntu 16.04 LTS
Необходимые нам пакеты установлены. Мы можем продолжить, установив все необходимое для работы Python.

Virtualenv

Создадим каталог для virtualenvs. Затем создадим новый virtualenv.

Активация virtualenv.

Наш prompt изменится, после того, как мы запустим virtualenv должным образом.
Как установить Python, Flask и Green Unicorn на Ubuntu 16.04 LTS
Наш virtualenv активирован с Python 3. Мы можем установить любые необходимые зависимости, в нашем случае, это Flask и Gunicorn.

Flask и Gunicorn

Наконец мы можем установить Flask и Green Unicorn через команду pip.

То, что мы получили ошибки, вроде тех, что указаны внизу – хороший знак:
Как установить Python, Flask и Green Unicorn на Ubuntu 16.04 LTS
Создаем новый каталог, под нашим исходным, в нем будет находиться проект Flask. Делаем из каталога новую папку.

Создаем новый файл под названием __init__.py внутри нашего каталога flaskproj, так что теперь мы можем сделать тест, чтобы убедиться в том, что Flask работает должным образом. Я предпочитаю использовать Vim, но Emacs, как и другие инструменты разработки также прекрасно подойдут. Впишите следующий код в файле __init__.py:

Мы можем запустить наше приложение при помощи сервера разработки Flask, используя команду __init__.py. Вместо этого запустим приложение Flask при помощи Gunicorn. Перейдем к каталогу, который расположен над папкой flaskproj. В нашем случае, мы можем ввести cd ~, после чего использовать команду gunicorn:

Как установить Python, Flask и Green Unicorn на Ubuntu 16.04 LTS

Мы можем вызвать оболочку приложения Flask в браузере через локальный хост, по адресу 8000 или 127.0.0.1:8000.
Как установить Python, Flask и Green Unicorn на Ubuntu 16.04 LTS
Теперь перейдем к настоящей разработке Flask!

Мы собрали ТОП Книг для Python программиста которые помогут быстро изучить язык программирования Python. Список книг: Книги по Python

Все готово к разработке

Эта простая установка для разработки при помощи Flask и Gunicorn на Ubuntu 16.04. Если вам нужен углубленный, пошаговый инструктаж для применения вашего WSGI веб приложения в производственной среде, обратитесь к книге Full Stack Python Guide to Deployments.

Подпишись на канал!

Новые видеоуроки, книги и полезные статьи для python программистов!