Deploy a full fledged containerised application using LocalStack
In this lesson, we’ll guide you through deploying a continer-based application, which mimics the complexity of a real-world application. We are using the following AWS services and their features to build our infrastructure:
- Elastic Container Service to create and deploy our containerized application.
- DynamoDB as a key-value and document database to persist our data.
- API Gateway to expose the containerized services to the user through HTTP APIs.
- Cognito User Pools for user authentication and authorizing requests to container APIs.
- Amplify to create the user client with ReactJS to send requests to container APIs.
- S3 to deploy the Amplify application to make the web application available to users.
- IAM to create policies to specify roles and permissions for various AWS services.
Additionally, we’ll explore the Resource Browser, that enables you to perform basic management operations for the locally deployed AWS resources during the development and testing process, in a fashion similar to the AWS Management Console.
Finally, we’ll manually generate certain resources using awslocal
, a wrapper over the aws
CLI which re-routes requests to LocalStack, to demonstrate how LocalStack can be used to create and manage resources locally.
Further reading:
- Field Notes: Serverless Container-based APIs with Amazon ECS and Amazon API Gateway
- What is
awslocal
CLI? - LocalStack Resource Browser
LocalStack Integrations - Infrastructure-as-Code and CI tools
In this video, we will see how LocalStack can be used with infrastructure-as-code (IaC) and continuous integration (CI) tools to enable local development more efficient, and foster team collaboration. LocalStack integrations allow you to use your favorite tools to create and manage AWS resources locally.
Next