Меню Рубрики

Установка python virtualenv ubuntu

Русская Исследовательская IT-Лаборатория

Веб-разработка, анализ данных и электронная инженерия

Создание виртуального окружения для python3 на Ubuntu

Традиционно для создания виртуального окружения для Python используется модуль virtualenv. Но, начиная с версии Python 3.3, появилась возможность создания «легкого» виртуального окружения с помощью встроенного модуля pyvenv.

1. Для начала можно проверить переменную $PATH, которая указывает, какие пути прописаны для запуска из командной оболочки:

Согласно данной информации python установлен как в пакете Anaconda (/home/pavel/installed/anaconda3/bin), так и в системном варианте (/usr/bin).

По умолчанию (если просто набрать python ) запускается python3 из пакета Anaconda, а если я хочу получить доступ к системному python, нужно набрать: /usr/bin/python3 .

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

2. Если не установлена поддержка виртуального окружения, то есть система выдает при попытках создания (см. п.3) следующее сообщение:

The virtual environment was not created successfully because ensurepip is not available. On Debian/Ubuntu systems, you need to install the python3-venv package using the following command.

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

В результате в директории work/python будет создана папка myvenv с необходимым содержимым для поддержки виртуального окружения.

4. Активировать виртуальное окружение можно командой (из папки, где оно создано):

В результате в bash в начале командной строки появиться надпись (myvenv).

5. Для деактивации используется команда:

6. Можно убедится, что pip и python работают в контейнере:

7. Если виртуальное окружение создавалась для работы с Django, то далее нужно выполнить следующие команды:

При подготовке статьи использовались следующие источники:

Любые замечания, пожелания и дополнения к статье пишите в комментариях.

Дополнительная информация (добавлена 21-03-2017).

Виртуальное окружение можно создавать и используя установленную Anaconda с помощью менеджера пакетов Conda. При этом есть возможность гибко выбирать, какую версию python нужно использовать.

Все доступные версии python можно проверить командой:

Чтобы создать виртуальное окружение с именем venv и самым последним python из 3-й ветки, достаточно выполнить:

Файлы окружения будут располагаться в папке envs внутри директории с Anaconda.

Активация и деактивация виртуального окружения производится с помощью следующих команд:

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

Если Anaconda не прописана в системном пути $PATH, то для запуска созданного Conda виртуального окружения может потребоваться набирать длинную команду, например:

Это, конечно, неудобно. Кроме того, если запуск виртуального окружения нужен для работы с Jupyter Notebook, то проще сделать небольшой файлик со скриптом на bash в рабочей директории.

Первая строчка создает файл. Вторая — присваивает ему атрибут «исполняемый». Третья — запускает редактор для внесения правок в файл. В редакторе добавляем и сохраняем следующий код:

Из консоли такой файл запускается командой bash begin.sh или ./begin.sh . Можно его запускать двойным кликом левой клавишей мышки и из файлового менеджера Nautilus. Если этого не происходит, нужно перейти в раздел «Параметры» — «Поведение» и поставить галочку «Каждый раз спрашивать» в разделе «Исполняемые текстовые файлы».

Добавлено 29-03-2017:

Для дополнительного чтения и понимания сути виртуального окружения есть хорошая статья (и комментарии) — https://www.dabapps.com/blog/introduction-to-pip-and-virtualenv-python/. В ней дается вводная информация и базовые сведения по работе с pip и virtualenv.

Для удобства организации виртуальных окружений и быстрой работы с ними есть надстройка virtualenvwrapper.

источник

Установка и настройка среды разработки Python 3 в Ubuntu 18.04

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

Из этой статьи вы узнаете, как установить Python и настроить среду разработки на Ubuntu 18.04.

Предварительные требования

Для работы вам понадобится сервер Ubuntu 18.04 с базовыми настройками.

Обновление программного обеспечения

В системе Ubuntu 18.04 и других дистрибутивах, основанных на Debian, Python 3 и Python 2 установлены по умолчанию, поэтому на первом шаге достаточно выполнить обновление пакетов. Войдите на сервер Ubuntu 18.04 под sudo и обновите пакеты с помощью APT (Advanced Packaging Tool):

Флаг –y автоматически подтвердит любые запросы системы.

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

Проверьте версию Python 3 с помощью следующей команды:

В ответе вы увидите номер текущей версии, например:

Установка pip

Чтобы управлять программными пакетами Python, установите pip — инструмент, который помогает устанавливать необходимые для проекта библиотеки и модули и управлять ими.

Теперь вы можете устанавливать пакеты Python3 с помощью pip :

Вместо имя_пакета укажите имя любого пакета или библиотеки Python, например, Django для веб-разработки или NumPy для научных вычислений. Например, для установки NumPy введите pip3 install numpy .

Установка дополнительных инструментов

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

Читайте также:  Установка задней подвески бмв на классику

Установка venv (Virtual Environment)

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

Мы будем использовать модуль venv , часть стандартной библиотеки Python 3, который можно установить с помощью:

Создание виртуальной среды для приложения

Создать новую среду можно с помощью модуля venv . В примере ниже мы назовем новую среду env , вы можете указать любое желаемое название.

Активация окружения виртуальной среды

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

После активации строка приглашения интерпретатора команд будет иметь префикс с именем среды:

Тестирование виртуальной среды

Запустите интерпретатор Python:

Помните, что в виртуальной среде Python 3 вместо команды python3 можно использовать python , а вместо pip3 — pip .

Воспользуйтесь функцией print() , чтобы создать стандартную программу «Hello, World»:

Деактивация виртуальной среды

Для деактивации среды используйте специальную команду:

Использование в приложениях (shebang)

Очень важно в приложениях изменить полный путь #!/usr/bin/python3 на #!/usr/bin/env python . Это позволит выбирать правильный транслятор, независимо от того, выполняется ли скрипт в рамках venv и или в системном окружении. Если вы оставляете путь #!/usr/bin/python3 , всегда будет использоваться системный интерепретатор, чувствительный к изменению среды.

Автоматическая активация виртуальной среды при запуске приложения

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

Подготовим скрипт myapp/run.sh для запуска приложения service.py в рамках виртуального окружения со следующим содержимым:

Установим права на исполнение и протестируем его запуск:

Заключение

Изолированная виртуальная среда разработки Python создана, можно приступать к разработке на python.

источник

linux-notes.org

У меня имеется некоторая ненависть к разработчикам python из-за того, что они наделали много версий и они не особо дружат между собой. И программы написанные на python 2.7, могут не работать на python 3.5. Приходится ставить разные версии ПО чтобы заработала та или иная утилита написанная на питон. Чтобы не засорять сервер, имеется отличное решение — использовать virtualenv и virtualenvwrapper. Это изолированное переменное окружение (ENV) для питон.

Я решил изучить как оно работает и записать заметку по данной теме «Установка virtualenv + virtualenvwrapper в Unix/Linux«. Собственно, я расскажу как установить, настроить и использовать virtualenv + virtualenvwrapper в среде Unix/Linux.

И так, что же помогает решить virtualenv?

Т.к PIP (по умолчанию) ставит все необходимые пакеты глобально в систему. Это хорошо подходит, если используется один проект и он заточен под конкретную версию питона, но если в системе имеется проекты с большим количеством зависимостей, в которых используется что-то тяжелое и ломающее обратную совместимость между релизами.

Собственно, virtualenv — это тулза, которая позволяет создавать изолированное, виртуальное и переменное окружения с различными пакетами. Такой подход, решает несовместимость версий и вы легко можете переключиться на подходящее переменное окружение и решить проблему.

Что касается virtualenvwrapper, — это нечто похожее на virtualenv, но в нем упрошено использование.

Установка virtualenv + virtualenvwrapper в Unix/Linux

И так, начнем установку virtualenv + virtualenvwrapper на различные ОС. Но прежде чем начнем, необходимо установить python ( разные версии). Кто не знает как это сделать, то вот отличный мануал:

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

Установка virtualenv + virtualenvwrapper в CentOS/Fedora/RedHat

-===СПАСОБ 1 — использовать PIP==

Самый простой способ установить все, — это использовать PIP. Я расскажу как установить его немного ниже.

-===СПАСОБ 2 — использовать пакетный менеджер==

Используем пакетный менеджер yum и выполняем установку:

-===СПАСОБ 3 — скомпилировать с исходного кода==

Собрать все вручную. Но я пока что — это делать не буду.

Установка virtualenv + virtualenvwrapper в Debian/Ubuntu

-===СПАСОБ 1 — использовать PIP==

Самый простой способ установить все, — это использовать PIP. Я расскажу как установить его немного ниже.

-===СПАСОБ 2 — использовать пакетный менеджер==

Используем пакетный менеджер apt-get и выполняем установку:

Что касается virtualenvwrapper, то ставим его через PIP.

-===СПАСОБ 3 — скомпилировать с исходного кода==

Собрать все вручную. Но я пока что — это делать не буду.

Установка virtualenv + virtualenvwrapper в FreeBSD

-===СПАСОБ 1 — использовать PIP==

Самый простой способ установить все, — это использовать PIP. Я расскажу как установить его немного ниже.

-===СПАСОБ 2 — используем порты==

-===СПАСОБ 3 — скомпилировать с исходного кода==

Собрать все вручную. Но я пока что — это делать не буду.

Читайте также:  Установка замка капота газель

Установка virtualenv + virtualenvwrapper в Mac OS X

-===СПАСОБ 1 — использовать PIP==

Самый простой способ установить все, — это использовать PIP. Я расскажу как установить его немного ниже.

-===СПАСОБ 2 — используем homebrew==

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

Или, можно сделать это так:

-===СПАСОБ 3 — скомпилировать с исходного кода==

Собрать все вручную. Но я пока что — это делать не буду.

Установка virtualenv + virtualenvwrapper через PIP

Для начала, стоит установить сам pip:

PS: можно использовать easy_install (как я собственно и делал):

Если имеется питон 3, то он ставит pip3. Чтобы установить virtualenv и virtualenvwrapper используйте :

И переходим к использованию…

Использование virtualenv + virtualenvwrapper в Unix/Linux

Сейчас, я приведу пример того, что используется на моем тестовом сервере. Проверяем версию питона:

Так же, я установил python 2.7, который находятся:

Так же, я установил python 3.4, который находятся:

Собственно сейчас я, создам переменное окружение для питона2 и питона3. Но для начала, нужно все подготовить.

Настройка virtualenvwrapper в Unix/Linux

Открываем bashrc для конкретного пользователя:

Добавляем следующие строки ( можно в самый низ файла):

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

PS: Чтобы найти местоположение virtualenvwrapper.sh, можно использовать locate утилиту — Установка locate и updatedb в Unix/Linux

Чтобы использовать Setuptools поверх Ditribute, вы можете установить переменную окружения вашей системы VIRTUALENV_SETUPTOOLS, чтобы Setuptools стал вместо Ditribute:

Чтобы все изменения вступили в силу, нужно выполнить:

ХОЧУ ОТМЕТИТЬ, ЧТО В MAC OS X — ЭТО ДЕЛАЕТСЯ НЕМНОГО НЕ ТАК!

Использование virtualenv + virtualenvwrapper в Unix/Linux

Я расскажу оба варианта использования, а какой выбрать — решать вам.

При использовании virtualenv.

Сейчас немного оптимизирую….

При использовании virtualenvwrapper.

Для еще большего комфорта при работе с virtualenv Doug Hellmann написал расширение virtualenvwrapper, которое делает все манипуляции с окружениям еще проще.

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

Сейчас я, создам переменное окружение:

Чтобы установить в него все необходимое (setuptools, pip, wheel), используйте:

PS: При создании «сандбокса с питоном», создастся он с той версией питона которая стоит в системе по дефолту! Чтобы создать бокс с конкретной версией питона, используйте ( как пример пион 2.7):

ИЛИ, выбираем версию python, которая будет использоваться в создаваемом виртуальном окружении и указываем, что мы не будем использовать системные пакеты::

PS: Чтобы использовать установленные в системе пакеты (если не нашлись в окружении):

Так же, можно использовать и еще один вариант:

Чтобы посмотреть список доступных ENV:

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

Для смены окружение, имеется команда:

Для перехода в домашнюю директорию данного env, используем:

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

PS: Думаю не нужно пояснять строку и так все понятно.

Находясь в окружении, вы можете устанавливать пакеты используя pip:

Можно сохранить все используемые зависимости в файл:

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

Для python2 используется pip, для python3 — pip3!

Для выхода из определенного окружения, используем:

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

А на этом, у меня все, статья «virtualenv + virtualenvwrapper» подошла к завершению.

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

источник

Python. Урок 17. Виртуальные окружения

Продолжаем серию “ Python .Уроки”. На этот раз мы изучим, что такое виртуальные окружения в Python , зачем они нужны и как их использовать. Познакомимся с инструментами virtualenv и venv для создания виртуальных окружений.

Что такое виртуальное окружение и зачем оно нужно?

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

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

Во-вторых : может возникнуть необходимость в том, чтобы запретить вносить изменения в приложение на уровне библиотек, т.е. вы установили приложение и хотите, чтобы оно работало независимо от того обновляются у вас библиотеки или нет. Как вы понимаете, если оно будет использовать библиотеки из глобального хранилища ( /usr/lib/pythonXX/site-packages ), то, со временем, могут возникнуть проблемы.

В-третьих : у вас просто может не быть доступа к каталогу /usr/lib/pythonXX/site-packages .

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

ПО позволяющее создавать виртуальное окружение в Python

Программное обеспечение, которое позволяет создавать виртуальные окружения в Python можно разделить на те, что входят в стандартную библиотеку Python и не входят в нее. Сделаем краткий обзор доступных инструментов (хороший пост на эту тем есть на stackoverflow ).

Читайте также:  Установки для калибровки аттенюаторов

Начнем с инструментов, которые входят в PyPI . Если кто не знает PyPI – это Python Package Index ( PyPI ) – репозиторий пакетов Python , доступный для любого разработчика и пользователя Python ( ).

Это, наверное, одни из самых популярных инструментов, позволяющих создавать виртуальные окружения. Он прост в установке и использовании. В сети довольно много руководств по virtualenv , самые интересные, на наш взгляд, будут собраны в конце урока в разделе “Полезные ссылки”. В общем, этот инструмент нужно обязательно освоить, как минимум, потому что описание развертывания и использования многих систем, созданных с использованием Python , включает в себя процесс создания виртуального окружения с помощью virtualenv .

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

Virtualenvwrapper – это обертка для virtualenv позволяющая хранить все изолированные окружения в одном месте, создавать их, копировать и удалять. Предоставляет удобный способ переключения между окружениями и возможность расширять функционал за счет plug-in ’ов.

Существуют ещё инструменты и plug-in ’ы, выполняющие работу по изоляции частей системы Python , но мы их не будем рассматривать.

Инструменты, входящие в стандартную библиотеку Python .

Этот модуль появился в Python3 и не может быть использован для решения задачи изоляции в Python2 . По своему функционалу очень похож на virtualenv . Если вы работаете с третьим Python , то можете смело использовать данный инструмент.

virtualenv

Будем рассматривать работу с virtualenv в рамках операционной системы Linux . Для Windows все будет очень похоже, за исключением моментов, связанных со спецификой этой ОС: названия и расположение каталогов, запуск скриптов оболочки и т.п.

Установка virtualenv

Virtualenv можно установить с использованием менеджера pip (ссылка на статью), либо скачать исходные коды проекта и установить приложение вручную.

Установка с использованием pip.

Для установки virtualenv откройте консоль и введите следующую команду:

Установка из исходного кода проекта.

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

Введите в консоли следующий набор команд:

X.X – это версия приложения, ее вам нужно знать заранее.

Если использовать ключевое слово sudo , инструмент будет установлен глобально, в противном случае – локально.

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

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

Виртуальное окружение создается следующей командой:

PRG1 в данном случае – это имя окружения.

После выполнения данной команды, в текущем каталоге будет создан новый каталог с именем PRG1 . Разберем более подробно его содержимое.

RPG1/bin/ – содержит скрипты для активации/деактивации окружения, интерпретатор Python , используемый в рамках данного окружения, менеджер pip и ещё несколько инструментов, обеспечивающих работу с пакетами Python . В Windows, это каталог PRG1\Scripts

PRG1/include/ и PRG1/lib/ – каталоги, содержащие библиотечные файлы окружения. Новые пакеты будут установлены в каталог PRG1/lib/pythonX.X/site-packages/ .

Активация виртуального окружения

Для активации виртуального окружения воспользуйтесь командой (для Linux ):

для Windows команда будет выглядеть так:

Команда source выполняет bash- скрипт без запуска второго bash- процесса.

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

При этом в переменную окружения PATH , в самое начало, будет добавлен путь до директории bin , созданного каталога RPG1 .

Если вы создадите виртуальное окружение с ключем –system-site-packages :

то в рамках окружения PRG1 вы будите иметь доступ к глобальному хранилищу пакетов:

Деактивация виртуального окружения

Для деактивации виртуального окружения (выхода из него), введите команду deactivate для Linux или deactivate.bat , если вы работаете в Windows .

venv

Устанавливать venv не нужно, т.к. он входит в стандартную библиотеку Python . Т.е. если вы установили себе Python , то venv у вас уже есть. Помните, что venv работает только в Python3 !

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

Для создания виртуального окружения с именем PRG2 с помощью venv выполните следующую команду:

В результате будет создан каталог PRG2 со структурой похожей на ту, что была описана для virtualenv . Функциональное назначение каталогов тоже самое.

Активация виртуального окружения

Активация виртуального окружения в Linux выполняется командой:

Деактивация виртуального окружения

Деактивация выполняется командой deactivate (работает как в Windows, так и в Linux )

Полезные ссылки

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

P.S.

Если вам интересна тема анализа данных, то мы рекомендуем ознакомиться с библиотекой Pandas. На нашем сайте вы можете найти вводные уроки по этой теме. Все уроки по библиотеке Pandas собраны в книге “Pandas. Работа с данными”.

источник

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

Adblock
detector