MiniStack — 무료 오픈소스 로컬 AWS 에뮬레이터

3 hours ago 2
  • AWS 환경을 로컬에서 완전히 재현할 수 있는 무료 오픈소스 에뮬레이터로, 유료화된 LocalStack의 대체재로 개발됨
  • 34개 AWS 서비스를 단일 포트에서 실행하며, Postgres·Redis·Docker 컨테이너를 실제로 구동해 인프라 수준의 테스트 환경을 제공
  • AWS SDK, CLI, Terraform, CDK, Pulumi 등과 완전 호환되며, 계정 등록이나 텔레메트리 없이 MIT 라이선스로 배포됨
  • 2초의 시작 속도, 30MB 메모리 사용량, 150MB Docker 이미지로 가볍고 빠른 로컬 실행 가능
  • 모든 기능이 무료로 제공되어, LocalStack Pro 기능을 대체하는 완전한 로컬 AWS 개발 환경을 구축할 수 있음

MiniStack 개요

  • MiniStack은 AWS 환경을 로컬에서 완전히 에뮬레이션할 수 있는 무료 오픈소스 도구로, 유료화된 LocalStack의 대체재로 설계됨
  • 34개의 AWS 서비스를 단일 포트에서 실행하며, 실제 Postgres, Redis, Docker 컨테이너를 사용
  • 계정 등록, 라이선스 키, 원격 텔레메트리 없이 동작하며 MIT 라이선스로 배포
  • 2초의 시작 시간, 30MB의 유휴 메모리 사용량, 150MB의 Docker 이미지 크기를 가짐
  • LocalStack Community 버전이 유료화된 이후, 무료로 동일한 개발 경험을 제공하는 대체 솔루션으로 제시됨

주요 기능 및 서비스

  • RDS, ElastiCache, ECS 등은 실제 Docker 컨테이너를 구동하여 실제 인프라 환경을 제공
  • Athena는 DuckDB를 통해 실제 SQL 쿼리를 실행하며, 설치되지 않은 경우 모의 결과를 반환
  • AWS SDK 호환성을 유지하여 boto3, AWS CLI, Terraform, CDK, Pulumi 등과 함께 사용 가능
  • 모든 서비스가 무료로 제공되며, 기능 제한이나 유료 플랜 구분이 없음
  • 포함된 34개 AWS 서비스

    • S3: 버킷, 객체, 버전 관리, 암호화, 수명 주기, CORS, 복제 등 지원
    • SQS: FIFO, DLQ, 배치, 가시성 등 큐 기능 지원
    • SNS: 주제, 구독, SQS 팬아웃, 배치 발행 지원
    • DynamoDB: CRUD, 쿼리, 스캔, 트랜잭션, TTL, GSI 지원
    • Lambda: 실제 Python 실행, SQS 이벤트 매핑, Layers 지원
    • IAM / STS / Secrets Manager / CloudWatch / SSM / EventBridge / Kinesis / SES / Step Functions / API Gateway v1·v2 / Route53 / Cognito / EC2 / EMR / EBS / EFS / ALB / ACM / WAF / CloudFormation 등 대부분의 AWS 핵심 서비스 포함
    • RDS는 실제 Postgres/MySQL 컨테이너를, ElastiCache는 실제 Redis/Memcached 컨테이너를 구동
    • ECS는 실제 Docker 컨테이너를 실행하며, GlueAthena는 데이터 카탈로그 및 SQL 실행 기능 제공

LocalStack과의 비교

  • LocalStack Free는 핵심 서비스가 유료화되었으나, MiniStack은 동일한 기능을 무료로 제공
  • Lambda, IAM, SSM, EventBridge, EC2, EMR, EBS, EFS, ALB, CloudFormation 등 LocalStack Pro 전용 기능도 무료로 포함
  • RDS, ElastiCache, ECS, Athena 등은 실제 컨테이너 기반으로 동작
  • 시작 속도 약 2초, 메모리 사용량 30MB, Docker 이미지 150MB로 LocalStack보다 훨씬 가벼움
  • 라이선스는 LocalStack의 BSL/Proprietary와 달리 MIT이며, 가격은 완전 무료

실제 인프라 기반 동작

  • RDS: CreateDBInstance 명령 시 실제 Postgres/MySQL Docker 컨테이너를 생성, 로컬 포트에서 직접 연결 가능
  • ElastiCache: CreateCacheCluster 명령으로 실제 Redis 컨테이너를 실행, 세션 저장소 등으로 활용 가능
  • ECS: RunTask 명령으로 실제 Docker 컨테이너를 실행, 로컬에서 ECS 태스크 정의 테스트 가능
  • Athena: DuckDB를 통해 실제 SQL 쿼리를 실행하고 결과 세트를 반환
  • 모든 AWS 도구와 완전 호환, API 엔드포인트 변경 없이 사용 가능

배포 및 사용

  • Docker 명령 한 줄로 실행 가능 docker run -p 4566:4566 nahuelnucera/ministack
  • AWS CLI를 통해 S3, RDS, ElastiCache 등 모든 서비스에 접근 가능
  • 예시:

라이선스 및 배포 정보

  • MIT 라이선스로 배포되어 자유로운 포크 및 내장 가능
  • GitHubDocker Hub에서 공개 제공
  • 개발자는 Nahuel이며, 프로젝트는 2026년까지 유지 예정

핵심 교훈

  • MiniStack은 LocalStack의 완전 무료 대체재로, 실제 인프라 기반의 로컬 AWS 환경을 제공
  • 빠른 시작 속도, 가벼운 리소스 사용량, 완전한 SDK 호환성을 특징으로 함
  • 모든 기능이 무료, MIT 라이선스, 텔레메트리 없음
  • 로컬 개발 및 CI/CD 환경에서 AWS 프로덕션 환경과 동일한 테스트 경험을 제공하는 도구임
Read Entire Article