Repolode
zappa

zappa/Zappa

Zappa despliega aplicaciones web Python WSGI y ASGI, además de funciones basadas en eventos, en AWS Lambda y API Gateway, sin necesidad de administrar servidores.

Estrellas
3,700
Forks
394
Issues abiertos
22
Último commit
hace 28 días

¿Qué es?

Zappa es una herramienta de despliegue que empaqueta una aplicación Python y su entorno virtual en un archivo compatible con Lambda y, luego, crea en AWS la función Lambda, las rutas de API Gateway y los roles IAM relacionados. Es compatible con aplicaciones WSGI como Flask, Django, Bottle y Pyramid, y con aplicaciones ASGI como FastAPI, Starlette y Quart. Cada solicitud se procesa mediante una invocación de Lambda de corta duración, por lo que la aplicación se adapta al tráfico y no necesita un servidor que esté siempre en ejecución.

Además de alojar aplicaciones web, Zappa puede ejecutar funciones según un cronograma mediante expresiones cron o rate, como alternativa a una configuración de Celery beat, y activar funciones a partir de eventos de AWS como cargas a S3, mensajes de SNS, colas de SQS y flujos de DynamoDB y Kinesis. También permite ejecutar tareas de forma asíncrona, invocar funciones de forma remota y ejecutar comandos de administración de Django; además, ofrece seguimiento de logs, reversiones y dominios personalizados con certificados SSL.

Funciones clave

  • 01Despliega aplicaciones WSGI (Flask, Django, Bottle, Pyramid) y ASGI (FastAPI, Starlette, Quart) en AWS Lambda.
  • 02Crea automáticamente rutas de API Gateway y roles IAM durante el despliegue.
  • 03Ejecuta funciones programadas mediante expresiones cron o rate.
  • 04Activa funciones a partir de eventos de AWS como S3, SNS, SQS y DynamoDB.
  • 05Admite la ejecución de tareas asíncronas, la invocación remota y los comandos manage de Django.
  • 06Ofrece dominios personalizados con certificados SSL de ACM, Let's Encrypt o proporcionados por el usuario.

Casos de uso

  • Alojar una API de Flask o Django con poco tráfico sin pagar por un servidor que esté siempre en ejecución.
  • Ejecutar tareas periódicas de Python en AWS sin mantener un worker de Celery.
  • Desplegar un servicio de FastAPI que se adapte a un volumen de solicitudes impredecible.
  • Procesar cargas a S3 o mensajes de SQS mediante funciones de Python.

Inicio rápido

  1. 1

    Instala Zappa con pip en el entorno virtual de tu proyecto

    pip install zappa
  2. 2

    Genera la configuración de despliegue de forma interactiva

    zappa init
  3. 3

    Despliega tu aplicación en AWS Lambda

    zappa deploy <stage>

Antes de usarlo

  • Requiere una cuenta de AWS y credenciales de AWS, y solo funciona con AWS Lambda y API Gateway.
  • Zappa debe instalarse en un entorno virtual cuyo nombre sea distinto del nombre del proyecto.
  • API Gateway limita las solicitudes a 30 segundos y la política de IAM predeterminada concede permisos demasiado amplios.

En colecciones

Temas

Preguntas frecuentes

¿Qué es Zappa?
Zappa despliega aplicaciones web Python WSGI y ASGI, además de funciones basadas en eventos, en AWS Lambda y API Gateway, sin necesidad de administrar servidores. Zappa es una herramienta de despliegue que empaqueta una aplicación Python y su entorno virtual en un archivo compatible con Lambda y, luego, crea en AWS la función Lambda, las rutas de API Gateway y los roles IAM relacionados. Es compatible con aplicaciones WSGI como Flask, Django, Bottle y Pyramid, y con aplicaciones ASGI como FastAPI, Starlette y Quart. Cada solicitud se procesa mediante una invocación de Lambda de corta duración, por lo que la aplicación se adapta al tráfico y no necesita un servidor que esté siempre en ejecución.
¿Zappa es gratuito? ¿Qué licencia tiene?
Zappa es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿Zappa sigue mantenido?
Mantenimiento activo. El último commit de Zappa fue el 8 oct 2026.
¿Para qué puedo usar Zappa?
Alojar una API de Flask o Django con poco tráfico sin pagar por un servidor que esté siempre en ejecución. Ejecutar tareas periódicas de Python en AWS sin mantener un worker de Celery. Desplegar un servicio de FastAPI que se adapte a un volumen de solicitudes impredecible. Procesar cargas a S3 o mensajes de SQS mediante funciones de Python.
¿Cómo se instala Zappa?
Instala Zappa con pip en el entorno virtual de tu proyecto: pip install zappa Genera la configuración de despliegue de forma interactiva: zappa init Despliega tu aplicación en AWS Lambda: zappa deploy <stage>
¿Dónde consigo Zappa?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/zappa/Zappa

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados