Python Manager nació como una herramienta para simplificar el despliegue de una app hecha en Python dentro de tu propio servidor administrado con cPanel.
Cómo desplegar una app de Python con Python Manager
-
Ingresa a la Terminal de cPanel y clonamos el repositorio la aplicación de pruebas de Python.
git clone https://github.com/wnpower/PythonTestApp
- Ve a Python Manager dentro de Herramientas Exclusivas.
- Crea una nueva aplicación.
- Completa el asistente con los datos de la app.
NOTA: El dato más "difícil" de obtener es el "Application Entry point" (punto de entrada). Si revisas el archivo de la aplicación de pruebas verás que es un ejemplo hecho en el framework Flask. En este caso el "punto de entrada" sería el nombre de la variable de inicialización de Flask llamada "MyApp". En tu app puede ser diferente y tendrás que modificarlo:
- Haz clic en Guardar. Se abrirá una ventana donde creará el entorno de la aplicación. Cuando termine haz clic de nuevo en Cerrar.
- Ve al listado de apps y edítala presionando el botón Editar.
- Presiona el botón Instalar dependencias.
- Se abrirá una ventana con el resultado de la instalación.
- Si todo va bien, cuando ingreses con el navegador a la URL que hayas elegido para desplegarla, verás el siguiente mensaje.
En caso que cambies el código de tu App (su contenido), recuerda que deberás reiniciar tu App de Python para que tome los cambios.
También, si el contenido luego no cambiara vía web, es posible que sea debido al caché web. En ese caso puedes provisoriamente limpiar el caché de Nginx en tu hosting o definitivamente Desactivar caché de servidor web con "Excluir Cache" de WNPower en cPanel.
Problemas Comunes
Recuerda que en caso de error, es posible que al acceder a tu app vía web veas un Error al acceder a tu App: We're sorry, but something went wrong. En ese link te explicamos como hacer el debug para ver o loguear los errores que ocurran en tu app.
AttributeError: module 'wsgi' has no attribute 'application'
Este error ocurre cuando configuraste mal tu App, y no indicaste el Application Entry point correcto. Asegurate que has indicado el objeto de tipo "application" correcto para poder iniciar tu app.
import imp ModuleNotFoundError: No module named 'imp'
A partir de Python 3.4, el módulo "imp" fue discontinuado. En caso que al configurar o aplicar cambios a tu App de Python obtengas este error (cPanel puede pisar el archivo con cada cambio que hagas), asegúrate que el Application startup file (el script .py que inicia tu App) no tenga esa sentencia. Posiblemente cPanel la agregue automáticamente al cambiar algo dentro de la configuración de tu App. Si detectas este error y constatas que utiliza "imp", cámbialo a "importlib".
¡Esperamos que te haya sido útil y feliz coding! 😃
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.