Repolode
ministackorg

ministackorg/ministack

Emulador local de AWS gratuito y de código abierto que ejecuta más de 60 servicios de AWS en un solo puerto y es compatible con boto3, AWS CLI y Terraform.

Alternativa open source a:LocalStack

Estrellas
5,114
Forks
538
Issues abiertos
21
Último commit
ayer

¿Qué es?

MiniStack es un emulador local de AWS que permite a los desarrolladores ejecutar S3, SQS, SNS, DynamoDB, Lambda, IAM, EC2, Step Functions y decenas de otros servicios de AWS en su propia máquina o en CI, sin una cuenta de AWS. Todos los servicios están disponibles en un único endpoint, el puerto 4566 de forma predeterminada, por lo que basta con cambiar la URL del endpoint en las configuraciones existentes de boto3, AWS CLI, Terraform, CDK y Pulumi.

El proyecto se presenta como una alternativa gratuita a LocalStack, cuyos servicios principales ahora requieren un plan de pago. Admite varias cuentas y regiones en un mismo endpoint: se usa una clave de acceso de 12 dígitos como ID de cuenta y la región de SigV4 delimita el estado. Algunos servicios usan backends reales, como RDS con contenedores de Postgres o MySQL, ElastiCache con Redis o Valkey y tareas de ECS ejecutadas como contenedores Docker. En la imagen completa, las consultas de Athena se ejecutan mediante DuckDB.

El contenedor incluye una API interna para automatizar pruebas, con comprobaciones de estado, un endpoint para restablecer el estado entre pruebas y endpoints para inspeccionar correos de SES, mensajes de SQS y mensajes SMS de SNS. Está escrito en Python y se distribuye bajo la licencia MIT.

Funciones clave

  • 01Emula más de 60 servicios de AWS en un solo puerto, incluidos S3, SQS, DynamoDB, Lambda y Step Functions.
  • 02Funciona con boto3, AWS CLI, Terraform, CDK y Pulumi al cambiar la URL del endpoint.
  • 03Aísla el estado por cuenta (mediante la clave de acceso) y por región.
  • 04Ejecuta contenedores reales de Postgres, MySQL, Redis y Valkey para RDS y ElastiCache.
  • 05Ofrece un endpoint para restablecer el estado y endpoints de inspección para usarlos en suites de pruebas.

Casos de uso

  • Ejecutar pruebas de integración que dependen de AWS en CI sin credenciales reales de AWS.
  • Desarrollar funciones Lambda y flujos de trabajo basados en eventos de forma local, usando SQS, SNS y EventBridge emulados.
  • Probar código de infraestructura de Terraform o CDK antes de implementarlo en AWS.
  • Sustituir una configuración de LocalStack de pago en entornos de desarrollo local.

Inicio rápido

  1. 1

    Instalar desde PyPI

    pip install ministack
  2. 2

    Iniciar MiniStack (se ejecuta en el puerto 4566)

    ministack
  3. 3

    Verificar que el servidor esté en ejecución

    curl http://localhost:4566/_ministack/health

Antes de usarlo

  • Las consultas SQL de Athena y algunas funciones de bases de datos reales requieren la imagen completa de Docker, que ocupa más espacio.
  • Los contenedores de RDS, ElastiCache, ECS y Lambda requieren montar el socket de Docker.

En colecciones

Temas

#aws#aws-emulator#local-development#testing#terraform#docker#serverless#mock-aws#aws-local#aws-sdk

Preguntas frecuentes

¿Qué es ministack?
Emulador local de AWS gratuito y de código abierto que ejecuta más de 60 servicios de AWS en un solo puerto y es compatible con boto3, AWS CLI y Terraform. MiniStack es un emulador local de AWS que permite a los desarrolladores ejecutar S3, SQS, SNS, DynamoDB, Lambda, IAM, EC2, Step Functions y decenas de otros servicios de AWS en su propia máquina o en CI, sin una cuenta de AWS. Todos los servicios están disponibles en un único endpoint, el puerto 4566 de forma predeterminada, por lo que basta con cambiar la URL del endpoint en las configuraciones existentes de boto3, AWS CLI, Terraform, CDK y Pulumi.
¿ministack es gratuito? ¿Qué licencia tiene?
ministack es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿ministack sigue mantenido?
Mantenimiento activo. El último commit de ministack fue el 6 nov 2026.
¿Para qué puedo usar ministack?
Ejecutar pruebas de integración que dependen de AWS en CI sin credenciales reales de AWS. Desarrollar funciones Lambda y flujos de trabajo basados en eventos de forma local, usando SQS, SNS y EventBridge emulados. Probar código de infraestructura de Terraform o CDK antes de implementarlo en AWS. Sustituir una configuración de LocalStack de pago en entornos de desarrollo local.
¿Cómo se instala ministack?
Instalar desde PyPI: pip install ministack Iniciar MiniStack (se ejecuta en el puerto 4566): ministack Verificar que el servidor esté en ejecución: curl http://localhost:4566/_ministack/health
¿Dónde consigo ministack?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/ministackorg/ministack

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

Proyectos relacionados