Instalar Gunicorn
Instala Gunicorn en tu máquina:gunicorn a tu requirements.txt, para que Square Cloud lo instale junto con tus demás dependencias:
requirements.txt
Uso básico
Para ejecutar una aplicación con Gunicorn, necesitas una aplicación WSGI, como una hecha con Flask o Django, y necesitas conocer el nombre del módulo y el nombre de la variable que contiene el objeto de la aplicación WSGI. Por ejemplo, si tienes una aplicación Flask en un archivo llamadoapp.py y la instancia de Flask se llama app, puedes ejecutarla con Gunicorn usando el siguiente comando:
python -m gunicornejecuta Gunicorn como un módulo de Python.--bind 0.0.0.0:80le indica a Gunicorn que escuche en todas las interfaces de red en el puerto 80.app:appespecifica el nombre del módulo (app) y el nombre de la variable (app) que contiene el objeto de la aplicación WSGI.
wsgi.py que Django crea dentro del paquete de tu proyecto (reemplaza myproject por el nombre de tu proyecto):
Opciones adicionales
Gunicorn proporciona varias opciones para personalizar su comportamiento. Estas son las más comunes; la referencia oficial de ajustes de Gunicorn las lista todas.Workers
--workers <number>
MEMORY. Si tu aplicación se detiene con LACK_OF_RAM, reduce el número de workers.
Name
--name <name>-n <name>
Worker class
--worker-class <class>-k <class>
sync, pero también puedes usar gevent, eventlet, tornado u otro tipo de worker.
Archivo de configuración
También puedes definir las opciones de Gunicorn en un archivo de configuración de Python. Gunicorn carga automáticamente un archivo llamadogunicorn.conf.py del directorio donde se ejecuta, que en Square Cloud es la raíz de tu proyecto. Para cualquier otro nombre de archivo, pásalo con -c <file>.
gunicorn.conf.py
--bind.
Ejecutarlo en Square Cloud
Crea un archivosquarecloud.app en la raíz de tu proyecto y pon el comando de Gunicorn en su campo START, para que Square Cloud inicie tu aplicación con Gunicorn en lugar del python app.py predeterminado:
Gunicorn debe hacer bind en
0.0.0.0:80: Square Cloud entrega el tráfico de tu subdominio al puerto 80 de tu aplicación. Square Cloud también define la variable de entorno PORT como 80, y Gunicorn la lee: sin la opción --bind, escucha en 0.0.0.0:$PORT cuando PORT está definida.myproject.wsgi:application en START y el manage.py de tu proyecto como MAIN. Los tutoriales de Flask y Django cubren el deploy completo.
Próximos pasos
Flask
Haz deploy de una aplicación Flask detrás de Gunicorn.
Django
Haz deploy de un proyecto Django detrás de Gunicorn.
La app no inicia
Soluciona EADDRINUSE, LACK_OF_RAM y otros fallos de inicio.
¿Te gustó este artículo?
- Creamos este contenido con mucho cuidado para ofrecer la mejor ayuda posible. Si este artículo te ayudó de alguna manera, ¡apoya nuestro trabajo! Los desarrolladores ya calificaron a Square Cloud con 4.9/5 en 402 reseñas en Google y Trustpilot: ¡deja la tuya también! Nos ayuda a entender qué es lo que más te importa.
Google Reviews
Deja tu reseña en Google Reviews.
Trustpilot
Deja tu reseña en Trustpilot.

