Os ambientes virtuais Python são usados para criar ambientes python isolados para evitar conflitos de dependência e versão e também cuidar indiretamente de problemas de permissão. Mas qual é a maneira mais fácil de configurá-lo e usá-lo no Ubuntu?
Os ambientes virtuais Python são usados para criar ambientes python isolados para evitar conflitos de dependência e versão e também cuidar indiretamente de problemas de permissão. Mas qual é a maneira mais fácil de configurá-lo e usá-lo no Ubuntu?
Respostas:
virtualenvwrapper(wrappers amigáveis para a funcionalidade de virtualenv)Instale virtualenvcom
sudo apt-get install virtualenv
(para instalação do Ubuntu 14.04 (confiável) python-virtualenv)
O motivo pelo qual também instalamos o virtualenvwrapper é porque ele oferece comandos simples e agradáveis para gerenciar seus ambientes virtuais. Existem duas maneiras de instalar virtualenvwrapper:
Corre
sudo apt install virtualenvwrapper
então corra
echo "source /usr/share/virtualenvwrapper/virtualenvwrapper.sh" >> ~/.bashrc
Instalar e / ou atualizar pip
Instale o pip para Python 2 com
sudo apt-get install python-pip
ou para Python 3
sudo apt-get install python3-pip
(se você usa o Python 3, pode ser necessário usá-lo em pip3vez do piprestante deste guia).
Opcional (mas recomendado): ative o preenchimento automático do bash para pip
Corre
pip completion --bash >> ~/.bashrc
e execute source ~/.bashrcpara ativar.
Instalar virtualenvwrapper
Como queremos evitar asudo pip instalação virtualenvwrapperlocal (por padrão em ~/.local) com:
pip install --user virtualenvwrapper
e
echo "export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3" >> ~/.bashrcOrigem virtualenvwrapper em .bashrc
echo "source ~/.local/bin/virtualenvwrapper.sh" >> ~/.bashrcPrimeiro exportamos a WORKON_HOMEvariável que contém o diretório em que nossos ambientes virtuais devem ser armazenados. Vamos fazer isso~/.virtualenvs
export WORKON_HOME=~/.virtualenvs
agora também crie este diretório
mkdir $WORKON_HOME
e colocar essa exportação em nosso ~/.bashrcarquivo para que essa variável seja definida automaticamente
echo "export WORKON_HOME=$WORKON_HOME" >> ~/.bashrc
Também podemos adicionar alguns truques extras, como os seguintes, que garantem que, se pipcriar um ambiente virtual extra, ele também será colocado em nosso WORKON_HOMEdiretório:
echo "export PIP_VIRTUALENV_BASE=$WORKON_HOME" >> ~/.bashrc
Fonte ~ / .bashrc para carregar as alterações
source ~/.bashrc
Teste se funciona
Agora criamos nosso primeiro ambiente virtual. O -pargumento é opcional, é usado para definir a versão do Python a ser usada; também pode ser python3por exemplo.
mkvirtualenv -p python2.7 test
Você verá que o ambiente será configurado e seu prompt agora inclui o nome do seu ambiente ativo entre parênteses. Além disso, se você agora executar
python -c "import sys; print sys.path"
você deve ver muito /home/user/.virtualenv/...porque agora não usa os pacotes de sites do sistema.
Você pode desativar seu ambiente executando
deactivate
e se você quiser trabalhar novamente, basta digitar
workon test
Por fim, se você deseja excluir seu ambiente, digite
rmvirtualenv test
Desfrutar!
Obrigado ao autor deste post do blog .
--no-site-packagesé padrão e está --distributeobsoleto
mkvirtualenv testnão funcionar, veja também: stackoverflow.com/questions/15608236/...
Os ambientes virtuais oferecem uma maneira de gerenciar e isolar dependências por projeto. Além disso, eles também evitam toda a sudo pip installsituação, o que é um risco de segurança, como expliquei em https://askubuntu.com/a/802594/15003 . A documentação oficial do Python também incentiva o uso de ambientes virtuais .
A maneira mais fácil de criar e usar ambientes virtuais para o Python 2 e o Python 3 é instalar virtualenvusando aptou apt-get. Para cada projeto Python, crie um virtualenv e ative-o. Observe que o virtualenv é específico para uma versão específica do Python. Após a ativação, use pippara instalar pacotes Python como de costume, independentemente de você estar usando Python 2 ou 3; não é necessário usar o pip3Python 3. sudoé usado apenas para instalar virtualenve não é usado com pip, evitando o risco de segurança acima mencionado. Os comandos para fazer isso são:
sudo apt update
sudo apt install virtualenv
cd ~/desired_directory # cd to desired_directory
virtualenv venv # create virtualenv named venv for default system Python, which is Python 2 for Ubuntu
source venv/bin/activate # activate virtualenv
pip install -U pip # upgrade pip in case it is outdated
pip install desired_package # install desired_package
Se você deseja criar um virtualenv para Python 3, substitua virtualenv venvpor:
virtualenv venv -p python3
Leia mais sobre vários sinos e assobios virtualenvem https://virtualenv.pypa.io/en/stable/ .
sourcesalva-me um monte de comandos
É fácil, você instala o python-virtualenv . Em seguida, você pode criar um virtualenv com o virtualenvcomando Veja a documentação deles para mais.
Os ambientes virtuais (venvs) são tão populares que a funcionalidade agora está incluída no próprio python (a partir do 3.3). Para usá-lo no Ubuntu, você precisa instalar python3-venv(já que o ensurepipmódulo não está disponível):
sudo apt-get install python3-venv
Depois disso, você pode usar
pyvenv myvirtualenv
para criar um ambiente virtual chamado myvirtualenv. Você pode então usar
source myvirtualenv/bin/activate
para ativar o ambiente virtual. Para desativar, basta digitar
deactivate
EDIT:
O pyvenvscript foi preterido em favor de python3 -m venv. Isso evita confusão sobre a qual intérprete Python pyvenvestá conectado e, portanto, qual interpretador Python será usado pelo ambiente virtual. ( fonte )
python-pipepython-virtualenvsão instaláveis através do repositório Ubuntu, sem necessidade de instalação manual.