Docker Compose LocalStack

In this article, We will show you how you can use docker-compose to create LocalStack services.

Video

What is LocalStack?

LocalStack provides an easy-to-use test/mocking framework for developing Cloud applications. This means you can test AWS cloud resources locally on your machine.

Note: LocalStack supporting only AWS cloud stack.

LocalStack spins up the following core Cloud APIs on your local machine.

  • ACM , API Gateway, CloudFormation, CloudWatch
  • CloudWatch Logs, DynamoDB, DynamoDB Streams
  • EC2, Elasticsearch Service, EventBridge (CloudWatch Events)
  • Firehose, IAM, Kinesis, KMS, Lambda, Redshift
  • Route53, S3, SecretsManager, SES, SNS
  • SQS, SSM, StepFunctions, STS

Benefits of Using LocalStack

  • Reduce Cost
  • Test AWS Cloud Resource Locally
  • Learn AWS Cloud Resource Locally
  • Debug Locally

Let’s Start

We hope you have installed Docker on your system else you can check the following article to install Docker.

Docker-Compose.YML

Note: Starting with version 0.11.0, all APIs are exposed via a single edge service, which is accessible on http://localhost:4566 by default. If you look into the following file we have used EDGE_PORT=4566.

In the above file, We are creating 2 Services as below with default region us-east-1

  1. Lambda
  2. S3

If you run the following command

docker-compose up

You will see the LocalStack container is running successfully

How To Test Services

To check all the services type the following URL on your browser

http://localhost:4566/health

if you look at the above screenshot 4 services are running

  1. lambda
  2. logs
  3. s3
  4. cloud watch

But in our docker-compose.yml file, we have added only 2 services which are

  1. lambda
  2. s3

With lambda service logs and cloud watch service enabled by default.

Thank you 🚀🚀🚀🚀🚀🚀🚀🚀🚀

Github

Written by

We teach & develop for startups

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store