In part 1, you'll learn how to manage Docker-based microservices on AWS via Elastic Container Service (ECS). You'll also wire up CodeBuild for building and testing Docker images along with Elastic Container Registry (ECR) for storing Docker images.
- Explain what container orchestration is and why you may need to use an orchestration tool to manage deployments
- Discuss the pros and cons of using Elastic Container Service (ECS) over other orchestration tools like Kubernetes, Mesos, and Docker Swarm
- Set up an IAM user
- Create a production Dockerfile that uses multistage Docker builds
- Utilize Amazon Elastic Container Registry (ECR) image registry to store built images
- Configure CodeBuild to run when code is checked in to GitHub
- Run unit and integrations tests and check code for quality and formatting issues on CodeBuild
In part 2, we'll set up Amazon Relational Database Service (RDS), configure Elastic Container Service (ECS), and use Terraform to manage a Fargate cluster on ECS.
- Configure RDS for data persistence
- Configure an Application Load Balancer (ALB) along with ECS to run a set of microservices
- Send container logs to CloudWatch
- Update a running container via a zero-downtime deployment strategy to not disrupt the current users or your application
- Explain the types of scaling that are available to you within ECS
- Use AWS Fargate with ECS to deploy a microservice
- Spin up AWS infrastructure via Terraform