Python Apps en cPanel
Python Apps en cPanel
cPanel permite ejecutar aplicaciones Python directamente desde el panel de control, sin necesidad de configurar un servidor VPS dedicado. Esto es ideal para pequeñas aplicaciones web, APIs o prototipos que no requieren infraestructura compleja.
Importante: Python Apps requiere que tu proveedor de hosting tenga habilitado CloudLinux y Passenger. Si no ves esta herramienta, contacta a tu proveedor.
1. Acceder a Python Apps
Inicio → Software → Setup Python App
2. Crear una aplicacion Python
- Haz clic en CREATE APPLICATION.
- Configura la aplicacion:
- Python version: Selecciona la version de Python (ejemplo: 3.9, 3.10, 3.11).
- Application root: Carpeta donde estaran los archivos de la app (ejemplo:
miapp). - Application URL: Selecciona el dominio y la URI (ejemplo:
tudominio.com/miapp). - Application startup file: Archivo de entrada (por defecto:
passenger_wsgi.py). - Application entry point: Nombre de la funcion de entrada (por defecto:
application).
- Haz clic en CREATE.
Consejo: Si no sabes que valor usar para el startup file y entry point, deja los valores por defecto.
3. Instalar dependencias con pip
- Despues de crear la app, busca la seccion Configuration files.
- Haz clic en el icono de editar junto a
requirements.txt. - Agrega las dependencias que necesitas (una por linea):
flask==3.0.0 requests==2.31.0 gunicorn==21.2.0 - Haz clic en Run Pip Install para instalar los paquetes.
Importante: Siempre especifica la version de cada paquete para evitar problemas de compatibilidad.
4. Configurar variables de entorno
- En la configuracion de la app, busca Environment variables.
- Haz clic en ADD VARIABLE.
- Agrega las variables necesarias:
- Name: Nombre de la variable (ejemplo:
FLASK_ENV). - Value: Valor de la variable (ejemplo:
production).
- Name: Nombre de la variable (ejemplo:
- Repite para cada variable que necesites.
- Haz clic en SAVE.
Variables comunes
| Variable | Descripcion | Ejemplo |
|---|---|---|
FLASK_ENV |
Entorno de Flask | production |
FLASK_APP |
Archivo principal de Flask | app.py |
SECRET_KEY |
Clave secreta de la aplicacion | tu-clave-secreta |
DATABASE_URL |
URL de conexion a la base de datos | mysql://user:pass@localhost/db |
5. Subir el codigo de la aplicacion
Via File Manager
- Ve a Archivos → File Manager.
- Navega a la carpeta de tu app (ejemplo:
miapp). - Sube los archivos Python de tu aplicacion.
- Asegurate de que el archivo de entrada (
passenger_wsgi.pyo el que configuraste) este presente.
Via SSH (si esta disponible)
- Conectate por SSH a tu hosting.
- Navega a la carpeta de la app:
cd ~/miapp - Sube los archivos con
scpo编辑alos directamente.
6. Gestionar la aplicacion
Desde la lista de aplicaciones en Python Apps:
| Accion | Que hace |
|---|---|
| RESTART | Reinicia la aplicacion (necesario despues de cambios en el codigo) |
| STOP APP | Detiene la aplicacion temporalmente |
| START APP | Inicia una aplicacion detenida |
| DESTROY | Elimina la aplicacion y todos sus archivos |
Importante: Despues de subir cambios al codigo, siempre haz clic en RESTART para que los cambios tomen efecto.
7. Ejemplo: Aplicacion basica con Flask
Estructura de archivos
miapp/
passenger_wsgi.py
app.py
requirements.txt
requirements.txt
flask==3.0.0
passenger_wsgi.py
import sys
import os
sys.path.insert(0, os.path.dirname(__file__))
from app import app as application
app.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
return 'Hola desde Python en cPanel!'
@app.route('/about')
def about():
return 'Esta es mi primera aplicacion Python'
Pasos
- Crea la estructura de archivos en la carpeta de tu app.
- Configura
requirements.txtcon las dependencias. - Haz clic en Run Pip Install para instalar Flask.
- Haz clic en RESTART para iniciar la app.
- Accede a la URL configurada (ejemplo:
tudominio.com/miapp).
8. Solucion de problemas
| Problema | Solucion |
|---|---|
| Python Apps no aparece en cPanel | Tu proveedor no tiene CloudLinux/Passenger habilitado; contacta a soporte |
| La app muestra error 500 | Revisa el log de errores en la configuracion de la app |
| No se instalan las dependencias | Verifica que requirements.txt tenga el formato correcto |
| La app no responde despues de cambios | Haz clic en RESTART para aplicar los cambios |
| No puedo acceder a la URL de la app | Verifica que la URL este configurada correctamente y que la app este iniciada |
| Error de permisos | Verifica que los archivos tengan permisos 644 (archivos) y 755 (carpetas) |
| Entorno virtual no funciona | Asegurate de usar la version de Python compatible con tus dependencias |
9. Consejos practicos
- Usa versiones especificas: En
requirements.txt, siempre indica la version exacta de cada paquete. - Revisa los logs: Si la app falla, revisa los logs en la configuracion de la app.
- No uses la app para sitios web completos: Python Apps en cPanel es ideal para APIs y aplicaciones ligeras, no para sitios de alto trafico.
- Mantene las dependencias actualizadas: Actualiza las versiones de los paquetes periodicamente.
- Usa variables de entorno: No hardcodes contrasenas ni datos sensibles en el codigo.
- Haz respaldos: Descarga el codigo de tu app regularmente desde File Manager.