MiniStack — Ücretsiz açık kaynaklı yerel AWS emülatörü
(ministack.org)- AWS ortamını yerelde tamamen yeniden oluşturabilen ücretsiz açık kaynaklı bir emülatör olup, ücretli hale gelen LocalStack'e alternatif olarak geliştirildi
- 34 AWS servisini tek bir portta çalıştırır ve Postgres·Redis·Docker container'larını gerçekten ayağa kaldırarak altyapı seviyesinde bir test ortamı sunar
- AWS SDK, CLI, Terraform, CDK, Pulumi vb. ile tam uyumludur ve hesap kaydı ya da telemetri olmadan MIT lisansı ile dağıtılır
- 2 saniyelik açılış hızı, 30MB bellek kullanımı, 150MB Docker imajı ile hafif ve hızlı yerel çalıştırma sağlar
- Tüm özellikler ücretsiz sunulur; böylece LocalStack Pro özelliklerinin yerini alan eksiksiz bir yerel AWS geliştirme ortamı kurulabilir
MiniStack genel bakış
- MiniStack, AWS ortamını yerelde tamamen emüle edebilen ücretsiz açık kaynaklı bir araç olup, ücretli hale gelen LocalStack'e alternatif olarak tasarlandı
- 34 AWS servisini tek bir portta çalıştırır ve gerçek Postgres, Redis, Docker container'ları kullanır
- Hesap kaydı, lisans anahtarı veya uzaktan telemetri olmadan çalışır ve MIT lisansı ile dağıtılır
- Yaklaşık 2 saniyelik açılış süresi, 30MB boşta bellek kullanımı ve 150MB Docker imaj boyutu sunar
- LocalStack Community sürümü ücretli hale geldikten sonra, aynı geliştirme deneyimini ücretsiz sunan alternatif bir çözüm olarak öne çıkıyor
Başlıca özellikler ve servisler
- RDS, ElastiCache, ECS gibi servislerde gerçek Docker container'ları çalıştırarak gerçek altyapı ortamı sağlar
- Athena, DuckDB üzerinden gerçek SQL sorguları çalıştırır; kurulu değilse sahte sonuçlar döndürür
- AWS SDK uyumluluğunu korur; bu sayede boto3, AWS CLI, Terraform, CDK, Pulumi vb. ile birlikte kullanılabilir
- Tüm servisler ücretsiz sunulur; özellik kısıtı veya ücretli plan ayrımı yoktur
-
Dahil edilen 34 AWS servisi
- S3: bucket, nesne, sürümleme, şifreleme, yaşam döngüsü, CORS, replikasyon vb. desteği
- SQS: FIFO, DLQ, batch, visibility gibi kuyruk özellikleri desteği
- SNS: topic, abonelik, SQS fan-out, toplu yayımlama desteği
- DynamoDB: CRUD, sorgu, scan, transaction, TTL, GSI desteği
- Lambda: gerçek Python yürütme, SQS event mapping, Layers desteği
- 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 dahil olmak üzere AWS'nin temel servislerinin büyük bölümü
- RDS, gerçek Postgres/MySQL container'larını; ElastiCache ise gerçek Redis/Memcached container'larını çalıştırır
- ECS gerçek Docker container'ları çalıştırır; Glue ve Athena ise veri kataloğu ve SQL çalıştırma işlevleri sunar
LocalStack ile karşılaştırma
- LocalStack Free'da temel servisler ücretli hale gelmişken, MiniStack aynı işlevleri ücretsiz sunar
- Lambda, IAM, SSM, EventBridge, EC2, EMR, EBS, EFS, ALB, CloudFormation gibi LocalStack Pro'ya özel özellikler de ücretsiz dahildir
- RDS, ElastiCache, ECS, Athena gibi servisler gerçek container tabanlı çalışır
- Yaklaşık 2 saniyelik açılış hızı, 30MB bellek kullanımı, 150MB Docker imajı ile LocalStack'ten çok daha hafiftir
- Lisansı, LocalStack'in BSL/Proprietary lisansından farklı olarak MIT'tir ve fiyatı tamamen ücretsizdir
Gerçek altyapı tabanlı çalışma
- RDS:
CreateDBInstancekomutu verildiğinde gerçek bir Postgres/MySQL Docker container'ı oluşturur; yerel porttan doğrudan bağlanılabilir - ElastiCache:
CreateCacheClusterkomutuyla gerçek bir Redis container'ı çalıştırır; oturum deposu gibi amaçlarla kullanılabilir - ECS:
RunTaskkomutuyla gerçek Docker container'ları çalıştırır; yerelde ECS task tanımlarını test etmeyi mümkün kılar - Athena: DuckDB üzerinden gerçek SQL sorguları çalıştırır ve sonuç kümesini döndürür
- Tüm AWS araçlarıyla tam uyumludur, API endpoint'ini değiştirmeden kullanılabilir
Dağıtım ve kullanım
- Tek satırlık bir Docker komutuyla çalıştırılabilir
docker run -p 4566:4566 nahuelnucera/ministack - AWS CLI üzerinden S3, RDS, ElastiCache vb. tüm servislere erişilebilir
- Örnekler:
aws --endpoint-url=http://localhost:4566 s3 mb s3://my-bucketaws --endpoint-url=http://localhost:4566 rds create-db-instance --engine postgresaws --endpoint-url=http://localhost:4566 elasticache create-cache-cluster --engine redis
Lisans ve dağıtım bilgileri
- MIT lisansı ile dağıtılır; özgürce fork edilip gömülü olarak kullanılabilir
- GitHub ve Docker Hub üzerinden herkese açık olarak sunulur
- Geliştirici Nahuel'dir ve projenin 2026'ya kadar sürdürüleceği belirtiliyor
Temel çıkarım
- MiniStack, LocalStack'in tamamen ücretsiz bir alternatifi olarak gerçek altyapı tabanlı yerel bir AWS ortamı sunar
- Hızlı açılış süresi, hafif kaynak kullanımı ve tam SDK uyumluluğu ile öne çıkar
- Tüm özellikler ücretsizdir, MIT lisanslıdır ve telemetri içermez
- Yerel geliştirme ve CI/CD ortamlarında AWS production ortamıyla aynı test deneyimini sunan bir araçtır
1 yorum
Hacker News görüşleri
DynamoDB hakkında iyi bilgi sahibiyim
ama bu kod servis istisnalarını, girdi doğrulamasını, eventual consistency davranışını ve edge case’leri düzgün taklit etmiyor
bu yüzden ministack üzerine geliştirme yapmak veya test çalıştırmak bana güven vermiyor
ayrıca AWS’nin birçok servisinde ücretsiz katman var; bu yüzden böyle bir alternatifi kullanmak için güçlü bir gerekçe de yok
yani uygulamanın doğru veriyi doğru API’ye gönderip göndermediğini doğrulamak için var
DynamoDB’nin gerçek davranışı gerekiyorsa (ör. kapasite limitleri, tutarlılık gecikmesi, stream işleme) bunun yerini tutmaz
yine de hata yeniden üretilebilirliğini artıran katkılar her zaman memnuniyetle karşılanır
şu anda
ProvisionedThroughputExceededException,TransactionConflictException,ItemCollectionSizeLimitExceededExceptiongibi durumlar beklemedetemel testleri ministack ile yapıp yalnızca yük testi aşamasında gerçek AWS maliyeti oluşturmak yeterli olur
LocalStack’in lisans değişikliği hoşuma gitmediği için ministack’e bakıyorum
acelesi olanlar
community-archiveetiketine sabitleyerek bunu hemen çözebilirDocker Hub bağlantısı
Bence hiçbir kopya proje, LocalStack’in başarısız olduğu nedenleri aşmakta kolay kolay başarılı olamaz
bu kadar çok AWS servisi için ücretsiz uyumluluğu sürdürmek gerçekçi görünmüyor
LocalStack’in kod tabanı karmakarışık olabilir ya da katkıcı yönetiminde başarısız olmuş olabilir
bugün AWS olgunlaştı ve değişim hızı yavaşladı, ayrıca AI %80 seviyesinde kodu kolayca üretebiliyor
bir de LocalStack’in fiyat artışı yüzünden açık kaynak bir alternatif arayan geliştirici kitlesi oluştu
LocalStack’in açık kaynak sürümünden öğrenilecek çok şey de var
sadece eski community sürümünün çekirdek servislerini güncel tutmak istiyoruz
MWAA gibi büyük servisleri desteklemeyi planlamıyoruz
çünkü çoğu çekirdek AWS servisinde API değişiklikleri neredeyse hiç olmuyor
yerelde daha karmaşık özellikler gerekirse gerçek bir AWS geliştirme hesabı kullanılabilir
LLM’ler ve yeni test yaklaşımları iyi kullanılırsa uyumlu servis setleri yarı otomatik şekilde oluşturulabilir gibi geliyor
ama ben şahsen buna katkı vermek istemiyorum
Floci’yi de denedim ama onda da erken dönem koda özgü sorunlar vardı
LocalStack’in asıl sorunu drift idi
yerel testler geçiyordu ama staging’de S3 yanıt formatı ya da DynamoDB throttling farkları yüzünden sık sık bozuluyordu
sonunda ömrü kısa gerçek AWS ortamlarında entegrasyon testleri çalıştırmaya geçtik
maliyet arttı ama production’da beklenmedik sorunlar çok daha azaldı
yani önce yerelde geçsin, ancak ondan sonra gerçek AWS entegrasyon testleri çalıştırılsın
LocalStack’in lisans değişikliği haberini ancak şimdi duydum
eskiden GH Actions üzerinde CI/CD testleri için iyi iş görüyordu ve AWS CLI ile uyumluluğu da oldukça iyiydi
açıkçası Amazon’un LocalStack’i satın alıp resmi yerel geliştirme ortamına dönüştürmesini umuyordum
ama bu, AWS test ortamı gelirini azaltacağı için muhtemelen gerçekçi değildi
hâlâ memnuniyetle kullanıyoruz ama gidişattan hayal kırıklığına uğradım
umarım bu sadece kısa vadeli gelir yaratma hamlesi değildir
uzun vadede müşteriler ücretsiz alternatiflere ya da GenAI tabanlı kişisel çözümlere kayabilir
ben şahsen LocalStack’in Pods’una ya da konsol arayüzüne ilgi duymuyorum
umarım community edition’ı kaldırma şartıyla VC yatırımı almamışlardır
CLI düzgün çalışsa bile LocalStack servisleri çoğu zaman dokümantasyondan farklı davranıyordu
Claude’un yaptığı ASCII diyagramı kaymış bir README görünce güven duyamıyorum
temel QC bile yapılmamış bir projeyse, özellik açıklamalarına da güvenmek zor
örnek bağlantı
CHANGELOG bağlantısı
bu gidişle AI üretimi düşük kaliteli kodların sayısı artmaya devam edecek gibi
hizalama bile kontrol edilmediyse güven daha da azalıyor
Bunu SDLC’ye katmak için henüz erken ama umut vadeden bir proje gibi görünüyor
LocalStack konusunda hayal kırıklığı yaşamış biri olarak bunun bir alternatif olabileceğini düşünüyorum
Bir başka alternatif daha önce HN’de paylaşılmıştı
ilgili tartışma bağlantısı
bu daha sadece 7 günlük bir proje
LocalStack alternatifi gerçekten istiyorum ama şimdilik olgunluk seviyesi çok düşük
bugünlerde yazılımların çoğu böyle görünüyor — şık web sitesi, büyük iddialar, AI kodu, yetersiz test
GCP tarafında bunun karşılığı ne, merak ediyorum
Amazon neden böyle bir şey yapmıyor bilmiyorum
herkes için çok daha kolay olurdu
Keşke gerçek maliyet simülatörü özelliği de olsaydı