Desarrollando con Python y Pyenv (part 2)

TL;DR: Pyenv-virtualenv es un plugin indispensable para Pyenv, que nos proporcionará funciones para administrar nuestros entornos virtuales.

Trabajar directamente con las versiones que instalamos a través Pyenv sería como trabajar con la versión que predeterminadamente trae nuestro sistema operativo, por lo que nos vemos en la necesidad de instalar Virtualenv (y en ocasiones Virtualenvwrapper).

Pyenv no es la excepción, Pyenv nos ayuda a gestionar las distintas versiones de Python, pero para administrar entornos virtuales requerimos de Pyenv-virtualenv.

Instalando Pyenv-virtualenv

En Mac OS es recomendada su instalación a través de homebrew:

$ brew install pyenv-virtualenv
$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
# Reiniciamos la shell para apreciar los cambios
$ exec "$SHELL"

En Ubuntu podemos verificar si el plugin se encuentra instalado ejecutando pyenv virtualenv --version.

En caso de no contar con el plugin instalado, realizaremos lo siguiente:

# De NO contar con el plugin Clonamos el repositorio
$ git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
# Agregamos inicializador de pyenv
$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
# Reiniciamos la shell para apreciar los cambios
$ exec "$SHELL"

Guía Básica

Para crear un entorno virtual debemos utilizar la siguiente nomenclatura:
pyenv virtualenv VERSION-INSTALADA NOMBRE-ENV .

Anteriormente instalamos la versión 3.6.4 de Python, por lo que si creamos un entorno virtual con dicha versión ejecutaremos pyenv virtualenv 3.6.4 mi-test-env.

Podemos comprobar nuestros entornos virtuales ejecutando pyenv virtualenvs , o bien pyenv versions .

Para activar nuestro entorno virtual utilizamos la nomenclatura: pyenv activate NOMBRE-ENV , en nuestro caso pyenv activate mi-test-env y por lo consiguiente, para desactivar el entorno virtual pyenv deactivate.

NOTA: Predeterminadamente las versiones instaladas con Pyenv y los entornos creados con Pyenv-virtualenv se encuentran en el directorio ~/.pyenv/versions .

Enlaces de Referencia