Tutorial de Python virtualenvwrapper
Es posible potenciar las capacidades de la utilidad virtualenv con las extensiones creadas por Doug Hellmann compiladas en un paquete Python llamado virtualenvwrapper que facilitarán notoriamente la gestión de un gran número de entornos virtuales.
Cómo instalar la utilidad virtualenvwrapper
Es posible instalarla usando el gestor de paquetes de las distribuciones Linux:
>> Archlinux
$ sudo pacman -S python-virtualenvwrapper
>> Fedora
$ sudo dnf install python-virtualenvwrapper
>> Debian, Ubuntu
$ sudo apt-get install virtualenvwrapper
O se puede usar pip:
>> Linux, OS X
$ sudo pip install virtualenvwrapper
>> Archlinux
>> (si pip ha sido instalado usando el gestor de paquetes)
$ sudo pip2 install virtualenvwrapper
Configuración de virtualenvwrapper
Por defecto virtualenvwrapper crea los virtualenvs en la carpeta
~/.virtualenvs
. Sin embargo ese comportamiento se puede cambiar. Para eso se
necesita agregar un par de variables de entorno al archivo ~/.bashrc
ó
~/.bash_profile
:
export WORKON_HOME=/opt/virtualenvs
export VIRTUALENVWRAPPER_HOOK_DIR=$WORKON_HOME/hooks
La variable WORKON_HOME
determina en que directorio se deben crear los
virtualenvs al ejecutar el comando mkvirtualenv
.
La segunda variable, VIRTUALENVWRAPPER_HOOK_DIR
, establece el directorio en
donde se instalaran algunos scripts que pueden ser usados para automatizar
ciertas tareas, como por ejemplo hacer un commit a un repositorio justo antes
de desactivar el virtualenv.
Por último, se debe agregar una línea al archivo ~/.bashrc
ó ~/.bash_profile
para especificar en dónde esta ubicado el ejecutable de virtualenvwrapper:
source /usr/bin/virtualenvwrapper.sh
Si se ha instalado virtualenvwrapper en Debian usando el gestor de paquetes, es probable que la línea de arriba no funcione. Intente la siguiente:
source /etc/bash_completion.d/virtualenvwrapper
Si las dos líneas anteriores han fallado, es posible que el archivo
virtualenvwrapper.sh
se encuentre ubicado en el directorio /usr/local/bin/
:
source /usr/local/bin/virtualenvwrapper.sh
Lo que hace este último comando es procesar el código contenido en el script
virtualenvwrapper.sh
dentro del shell o terminal que estamos utilizando para
que los comandos mkvirtualenv
, rmvirtualenv
y workon
estén disponibles.
Cómo crear un Python virtualenv con virtualenvwrapper
Se debe ejecutar el comando mkvirtualenv
más el nombre del virtualenv.
Las extensiones se encargan de manera automática de crear el virtualenv en
el directorio correspondiente:
$ mkvirtualenv mi_proyecto
Cómo eliminar Python virtualenvs con virtualenvwrapper
Al ejecutar el comando rmvirtualenv
más el nombre del virtualenv,
virtualenvwrapper se encarga de borrar el virtualenv con todas los paquetes
que hayamos instalado en él:
$ rmvirtualenv mi_proyecto
Cómo activar un Python virtualenv con virtualenvwrapper
Para activar un virtualenv solamente se necesita ejecutar el comando
workon
más el nombre del virtualenv en la terminal:
$ workon mi_proyecto
Lo cual es mas fácil que activar un virtualenv de forma manual:
$ cd mi_proyecto
$ source bin/activate