Usar pip para instalar módulos Python 2

Generalidades

Para correr comandos en este artículo, debes iniciar sesión en tu servidor vía SSH con tu usuario Shell. Ve los siguientes artículos para más información:

Crear un ambiente virtual para tu proyecto

Cuando estés trabajando con proyectos de Python, es siempre una buena idea crear un virtualenv (ambiente virtual). Esto te permite crear un ambiente asolado, separado de la versión del sistema de Python. Cualquier cambio a este que hagas a este ambiente laboral solo afecta el proyecto en sí, nada más. De esta manera, es seguro probar tus proyectos pues pueden ser eliminados y reconstruidos muy fácilmente. Vé el siguiente artículo para más detalles:

Esto es importante si quieres correr 'pip'. Normalmente, pip trata de instalar la carpeta del sistema por defecto de Python del servidor. Esto no funciona pues tú no tienes acceso a esta carpeta. Cuando creas un ambiente virtual, pip se instala localmente dentro del usuario, entonces vas a poder instalar cualquier cosa que quieras sin error.

Instalación de pip

pip no está instalado por defecto. Solo está disponible si has instalado una versión personalizada de Python 2. Cuando instales una versión personalizada, pip está instalada con esto:

Puedes usar pip para crear un virtualenv, activarlo, y correr pup para instalar módulos.

Actualizar pip

Después de instalar una versión personalizada de Python, debes crear un virtualenv que use esa versión personalizada. Una vez está creado y activado, puedes usar pip.

Para actualizar la versión de pip, debes usar un virtualenv. Si no creas un virtualenv usando una versión personalizada de Python 2, pip usará la versión del sistema. Esto hará fallar la actualización de pip o instalar paquetes pues no tienes acceso a ciertos directorios en el servidor.

Si creas un virtualenv, tienes acceso total a actualizar e instalar lo que quieras.

Es también una buena idea actualizar pip en este punto. Vé el siguiente artículo para ver instrucciones de cómo actualizar pip dentro de tu virtualenv:

Instalar módulos personalizados

Se recomienda que uses pip (en tu ambiente virtual) para instalar fácilmente los módulos personalizados. Por ejemplo:

(venv) [server]$ pip install <module>

Por ejemplo, (e.g., mysqlclient si quieres usar una base de datos MySQL) para tu sitio web usando pip:

(venv) [server]$ pip install mysqlclient

Vé los siguientes enlaces para más detalles:

Solución de problemas

Después de haber creado y activado tu virtualenv, puede que veas el siguiente error cuando instales paquetes con pip:

SNIMissingWarning: An HTTPS request has been made, but the SNI (Server Name Indication) extension to TLS is not available on this platform.

Esto usualmente significa que estás usando una versión de Python más vieja que 2.7.9. Para arreglar esto, instala estos tres paquetes de Python para actualizar las librerías viejas:

(venv) [server]$ pip install pyOpenSSL ndg-httpsclient pyasn1

No deberás ver más esos errores cuando instales.

Recuerda que debido a la actualización de Linux Kernel, instalar una versión de Python menor a 2.7.15 fallará en todos los servidores de DreamHost. Si necesitas instalar una versión personalizada de Python, asegúrate que sea una más nueva a 2.7.15:

Si estás usando Python 3

Si estás usando Python 3, usa el comando 'pip3'. Por ejemplo:

(venv) [server]$ pip3 install mysqlclient

Sin embargo, tendrás ya que instalar una versión personalizada Python 3 en un virtualenv:

Vé el siguiente artículo para más detalles:

Ver también

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.