Instalar y usar virtualenv con Python 3

 

Generalidades

Este artículo explica cómo usar Python 3 para instalar la herramienta virtualenv en un servidor de DreamHost.

Requisitos previos

Este artículo asume que has creado un usuario de Shell y puedes iniciar sesión en tu servidor a través de SSH.

¿Qué es virtualenv?

Virtualenv es una herramienta que se utiliza para crear un entorno Python aislado. Este entorno tiene sus propios directorios de instalación que no comparten bibliotecas con otros entornos virtualenv (y opcionalmente tampoco accede a las bibliotecas instaladas globalmente).

Virtualenv es la forma recomendada de configurar un entorno Python personalizado.

Diferencias entre virtualenv y venv

La principal diferencia es que virtualenv ofrece más funciones que venv. Aunque puedes crear un entorno virtual usando venv con Python3, se recomienda que instales y uses virtualenv en su lugar.

Revisa esta página para obtener una lista de características que venv no ofrece en comparación con virtualenv.

Instalar virtualenv usando pip3

Al trabajar con entornos virtuales en Python, se recomienda instalar una versión personalizada de Python en lugar de la versión del servidor. Luego, puedes usar pip3 para instalar virtualenv localmente.

  1. Inicia sesión en tu servidor a través de SSH.
  2. Instala una versión personalizada de Python 3, que también tenga pip3.
  3. Confirma que esté instalado y activo corriendo el comando which python3 como aparece en el artículo. Esto debería devolver la ruta de la versión personalizada de Python 3.
  4. Corre el siguiente artículo para actualizar pip3.
    [server]$ python3 -m pip install --upgrade pip
  5. Instala virtualenv usando pip3.
    [server]$ pip3 install virtualenv
    Collecting virtualenv Downloading virtualenv-15.1.0-py2.py3-none-any.whl (1.8MB) 100% |████████████████████████████████| 1.8MB 367kB/s Installing collected packages: virtualenv Successfully installed virtualenv-15.1.0
  6. Corre el siguiente comando para ver la ruta completa a tu versión personalizada de virtualenv.
    [server]$ which virtualenv
    /home/username/opt/python-3.10.1/bin/virtualenv

Crear un entorno virtual usando una versión personalizada de Python

Los siguientes pasos crean un nuevo entorno virtual utilizando tu versión personalizada de Python.

Estos pasos usan la versión 3.10.1 de Python. Asegúrate de utilizar la versión que instalaste.

  1. Anote la ruta completa del archivo de la versión personalizada de Python que acabas de instalar anteriormente corriendo which python3.
    [server]$ which python3
    /home/username/opt/python-3.10.1/bin/python
  2. Navega al directorio del sitio, donde crearás el nuevo entorno virtual:
    [server]$ cd ~/example.com
  3. Actualiza tu .bash_profile
    [server]$ . ~/.bash_profile
  4. Crea el entorno virtual usando la versión personalizada de Python. El siguiente comando crea un entorno virtual llamado venv y utiliza la banderilla -p para especificar la ruta completa a la versión de Python3 que acabas de instalar:

    Puedes llamar al virtualenv como prefieras.

    [server]$ virtualenv -p /home/username/opt/python-3.10.1/bin/python3 venv

    Es posible que veas el siguiente error durante la instalación.

    setuptools pip failed with error code 1` error

    Si sí, corre lo siguiente:

    [user@localhost]$ pip3 install --upgrade setuptools

    Inténtalo de nuevo y deberías poder instalarlo sin ningún error.

Cómo usar virtualenv

Esta sección explica cómo activar tu virtualenv, instalar paquetes y luego desactivarlo o eliminarlo cuando ya no lo necesites.

Activar el virtualenv

Para usar tu virtualenv, primero debes activarlo corriendo el comando source. Ejecuta lo siguiente en el directorio donde instalaste el virtualenv.

[server]$ source venv/bin/activate
El mensaje cambia y el nombre del entorno virtual actual aparece a la izquierda. Por ejemplo:
(venv) [server]$ 

Verifica que la versión correcta de Python esté activa:

[server]$ python -V
Python 3.10.1

Cualquier paquete que instales usando pip ahora se colocará en la carpeta del proyecto del entorno virtual, aislado de la instalación global de Python.

Instalar módulos personalizados

Revisa este artículo para obtener instrucciones sobre cómo usar pip para instalar módulos de Python.

Desactivar el virtualenv

Cuando termines de trabajar en el entorno virtual, corre el comando deactivate para regresar al entorno de tu usuario shell.

[server]$ deactivate

Eliminar el virtual environment

Si ya no necesitas el virtualenv, puedes eliminarlo simplemente borrando la carpeta del proyecto. Por ejemplo:

[server]$ rm -rf venv

Solución de problemas

Usar la ruta completa a tu virtualenv personalizado

Es posible que cuando corras el comando virtualenv, responda con la versión del servidor fuera de tu instalación personalizada. Corre el siguiente comando para confirmar la ruta completa a tu virtualenv Python3.

[server]$ which virtualenv    
/home/username/opt/python-3.10.1/bin/virtualenv

Luego puedes crear un virtualenv usando la ruta completa de esta manera:

[server]$ /home/username/opt/python-3.10.1/bin/virtualenv -p /home/username/opt/python-3.10.1/bin/python3 venv

Ver también

¿Este artículo ha respondido sus preguntas?

¿Aún no encuentra lo que busca?