La vida útil de Python 2 ha terminado y ya no recibe actualizaciones de seguridad. Puedes leer más sobre esto aquí:
Python 2 todavía está disponible en los servidores de DreamHost, sin embargo, se recomienda que actualices a Python 3 para garantizar que tus aplicaciones sean seguras en el futuro.
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. Mira 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
Para usar pip, primero instala una versión personalizada de Python 2. luego se instala pip con él.
Luego puedes usar el comando pip para crear un virtualenv e 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 creado y activado, puedes usar el comando 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. Mira el siguiente artículo para ver instrucciones de cómo actualizar pip dentro de tu virtualenv:
Instalar módulos personalizados
Se recomienda que ejecutes 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
Revisa 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 utilizando Python 3, consulta el siguiente artículo para obtener información sobre pip3.