Repolode
ministackorg

ministackorg/ministack

Бесплатный эмулятор AWS с открытым исходным кодом: запускает более 60 сервисов на одном порту и совместим с boto3, AWS CLI и Terraform.

Open source альтернатива:LocalStack

Звёзды
5,111
Форки
538
Открытые issues
21
Последний коммит
23 часа назад

Что это?

MiniStack — локальный эмулятор AWS, который позволяет запускать S3, SQS, SNS, DynamoDB, Lambda, IAM, EC2, Step Functions и десятки других сервисов AWS на своей машине или в CI без аккаунта AWS. Все сервисы доступны через одну конечную точку — по умолчанию это порт 4566. Поэтому в существующих конфигурациях boto3, AWS CLI, Terraform, CDK и Pulumi достаточно изменить URL конечной точки.

Проект позиционируется как бесплатная альтернатива LocalStack, основные сервисы которого теперь доступны только в платном тарифе. На одной конечной точке поддерживаются несколько аккаунтов и регионов: 12-значный ключ доступа используется как ID аккаунта, а регион SigV4 определяет область действия состояния. Для некоторых сервисов используются настоящие бэкенды: например, RDS работает с контейнерами Postgres или MySQL, ElastiCache — с Redis или Valkey, а задачи ECS запускаются как Docker-контейнеры. В полной версии образа запросы Athena выполняются через DuckDB.

В контейнере есть внутренний API для автоматизации тестирования: проверки состояния, endpoint для сброса состояния между тестами, а также endpoint’ы для просмотра писем SES, сообщений SQS и SMS-сообщений SNS. Проект написан на Python и распространяется по лицензии MIT.

Ключевые возможности

  • 01Эмулирует более 60 сервисов AWS на одном порту, включая S3, SQS, DynamoDB, Lambda и Step Functions.
  • 02Совместим с boto3, AWS CLI, Terraform, CDK и Pulumi — достаточно изменить URL конечной точки.
  • 03Изолирует состояние для каждого аккаунта (по ключу доступа) и региона.
  • 04Запускает настоящие контейнеры Postgres, MySQL, Redis и Valkey для RDS и ElastiCache.
  • 05Предоставляет endpoint для сброса состояния и endpoint’ы для его проверки в тестовых наборах.

Сценарии использования

  • Запуск интеграционных тестов, зависящих от AWS, в CI без настоящих учётных данных AWS.
  • Локальная разработка Lambda-функций и событийных сценариев с эмулируемыми SQS, SNS и EventBridge.
  • Проверка инфраструктурного кода Terraform или CDK перед развёртыванием в AWS.
  • Замена платной конфигурации LocalStack в локальной среде разработки.

Быстрый старт

  1. 1

    Установить из PyPI

    pip install ministack
  2. 2

    Запустить MiniStack (работает на порту 4566)

    ministack
  3. 3

    Убедиться, что сервер запущен

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

Что важно знать

  • Для SQL-запросов Athena и некоторых функций реальных баз данных требуется полный образ Docker, который занимает больше места.
  • Для контейнеров RDS, ElastiCache, ECS и Lambda необходимо подключить сокет Docker.

В подборках

Темы

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

Частые вопросы

Что такое ministack?
Бесплатный эмулятор AWS с открытым исходным кодом: запускает более 60 сервисов на одном порту и совместим с boto3, AWS CLI и Terraform. MiniStack — локальный эмулятор AWS, который позволяет запускать S3, SQS, SNS, DynamoDB, Lambda, IAM, EC2, Step Functions и десятки других сервисов AWS на своей машине или в CI без аккаунта AWS. Все сервисы доступны через одну конечную точку — по умолчанию это порт 4566. Поэтому в существующих конфигурациях boto3, AWS CLI, Terraform, CDK и Pulumi достаточно изменить URL конечной точки.
ministack можно использовать бесплатно? Какая у него лицензия?
ministack распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
ministack всё ещё поддерживается?
Активно поддерживается. Последний коммит в ministack — 6 нояб. 2026 г..
Для чего можно использовать ministack?
Запуск интеграционных тестов, зависящих от AWS, в CI без настоящих учётных данных AWS. Локальная разработка Lambda-функций и событийных сценариев с эмулируемыми SQS, SNS и EventBridge. Проверка инфраструктурного кода Terraform или CDK перед развёртыванием в AWS. Замена платной конфигурации LocalStack в локальной среде разработки.
Как установить ministack?
Установить из PyPI: pip install ministack Запустить MiniStack (работает на порту 4566): ministack Убедиться, что сервер запущен: curl http://localhost:4566/_ministack/health
Где скачать ministack?
Исходный код и инструкции по установке — на GitHub: https://github.com/ministackorg/ministack

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Бесплатный AWS-эмулятор с открытым исходным кодом для локального запуска AWS-подобных сервисов без аккаунта и токена авторизации.

30,8 тыс.+3,5 тыс. за неделю3,4 тыс.JavaMITАктивно поддерживаетсяОбновлён 23 часа назад

CLI для AWS CDK, который разворачивает существующие приложения CDK прямыми вызовами AWS SDK вместо CloudFormation, ускоряя деплой в средах разработки и тестирования.

171+12 за неделю13TypeScriptApache-2.0Активно поддерживаетсяОбновлён 19 часов назад

Запускает кластеры Kubernetes в контейнерах Docker с помощью vCluster — более лёгкой альтернативы KinD с возможностью приостанавливать и возобновлять работу и встроенными балансировщиками нагрузки.

1 тыс.+4 за неделю112OtherОбновлён 5 месяцев назад