desenvolvimento, linux, python

Ambientes virtuais para Python no Ubuntu

Preparando o ambiente:

sudo apt-get install python-pip
sudo apt-get install python-virtualenv
sudo apt-get install virtualenvwrapper

Adicione o controle de cache para baixar os pacotes do pip apenas uma vez:

echo 'export PIP_DOWNLOAD_CACHE=$HOME/.pip_download_cache' >> $HOME/.bashrc 

Para criar uma máquina virtual para o projeto MEU_PROJETO sem acesso aos pacotes do sistema:

mkvirtualenv -p /usr/bin/python2 MEU_PROJETO

Para criar uma máquina virtual para o projeto MEU_PROJETO com acesso aos pacotes do sistema:

mkvirtualenv -p /usr/bin/python2 MEU_PROJETO --system-site-packages

Para começar a trabalhar nesta vm, basta entrar com o comando:

workon MEU_PROJETO

Agora, todas as modificações ou instalações de pacotes ocorrem apenas para esta vm, sem interferir nas demais, ou no ambiente do host.

ATENÇÃO:
O switch para esta vm ocorreu apenas neste terminal aberto.
Se você trabalhar em múltiplos terminais (num deles você entrou no shell do python, noutro você carregou um servidor web) terá que ter executado o comando workon em cada terminal.

Instalando o Django 1.4, por exemplo:

Verifique que não temos o django ainda na nossa nova vm:

pip freeze

Agora instalamos o pacote. É preferível especificar a versão que queremos, caso contrário ele irá baixar a versão mais recente. Se quiséssemos sempre as últimas versões, não precisaríamos virtualizar ambientes.

pip install django==1.4

Verifique novamente o pip freeze. Agora ele contempla o django 1.4

Para sair de uma vm e voltar para o host:

deactivate

Agora os pacotes exibidos pelo pip freeze serão referente ao host, e não à nossa vm.

Um pacote que não controlamos pelo pip em uma vm é o próprio python.
Se você desejar usar o python 3, por exemplo, ele deve ser definido na criação da vm (no comando mkvirtualenv).

Para saber que opções de python você tem verifique com:

ls /usr/bin/python*

Para criar ambientes virtuais com alguns pacotes sendo instalados na geração:

gedit $HOME/.virtualenvs/postmkvirtualenv

Adicione no arquivo N comandos de instalação: “pip install PACOTE”

Anúncios

Um comentário sobre “Ambientes virtuais para Python no Ubuntu

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s