LocalStack, bulut (özellikle AWS) servislerini lokal ortamda taklit eden (emüle eden) bir geliştirme aracıdır.
Yani, AWS servislerini (S3, Lambda, DynamoDB, SQS, SNS, vb.) gerçek AWS hesabına bağlanmadan kendi bilgisayarında çalıştırmanı sağlar. Böylece:
- Geliştiriciler AWS kaynaklarına ücret ödemeden uygulama geliştirebilir ve test edebilir.
- CI/CD süreçlerinde offline veya izole test ortamları kurulabilir.
- Gerçek bulut ortamına dağıtmadan önce altyapı kodu (IaC) ve uygulama entegrasyonları denenebilir.
🔧 Örnek kullanım senaryosu
Diyelim ki bir uygulaman S3’e dosya yüklüyor, Lambda fonksiyonunu tetikliyor ve sonuçları DynamoDB’ye kaydediyor.
Normalde bu akışı test etmek için AWS hesabına ihtiyacın olur.
Ama LocalStack ile:
docker-compose.ymliçinde LocalStack’i başlatırsın,- AWS CLI veya SDK’yi
http://localhost:4566gibi LocalStack endpoint’ine yönlendirirsin, - Uygulaman sanki AWS’ye bağlıymış gibi davranır, ama her şey senin bilgisayarında çalışır.
🚀 Kurulum (kısaca)
LocalStack genelde Docker üzerinde çalıştırılır:
# LocalStack'i Docker ile başlat
docker run --rm -it -p 4566:4566 -p 4510-4559:4510-4559 localstack/localstack
AWS CLI’yı LocalStack’e bağlamak için:
aws --endpoint-url=http://localhost:4566 s3 ls
🧩 Desteklenen Servisler
LocalStack birçok AWS servisini destekler, örneğin:
- S3 (depolama)
- DynamoDB
- Lambda
- SQS / SNS
- API Gateway
- CloudFormation
- Kinesis, Secrets Manager, Step Functions, vb.
(Bazı ileri seviye özellikler sadece LocalStack Pro / Team sürümlerinde bulunur.)
💡 Kısaca
| Özellik | Açıklama |
|---|---|
| Amaç | AWS ortamını lokal olarak taklit etmek |
| Avantaj | Ücretsiz, hızlı, offline geliştirme ve test |
| Kurulum | Genellikle Docker üzerinden |
| Kullanım | AWS CLI / SDK ile aynı şekilde |

Bir yanıt yazın