CLOUD LABS
Mastering AWS Deployment Services—From Zero to Hero
In this Cloud Lab, you’ll look at different deployment services provided by AWS, including AWS Elastic Beanstalk and AWS App Runner. You’ll use both services to deploy a React application packaged and deployed on the AWS Elastic Container Repository.
beginner
Certificate of Completion
Learning Objectives
AWS offers a comprehensive suite of deployment services that streamline web application deployment while eliminating the complexities of load balancing, scaling, and server resource management. These include AWS Elastic Beanstalk and AWS App Runner, which allow for offloading operational management to AWS.
In this Cloud Lab, you’ll first set up a private repository in the Amazon Elastic Container Registry (ECR). Next, you’ll launch an EC2 instance to build a Docker image for a React application and push it to your ECR repository. Finally, you’ll deploy a Docker container on AWS Elastic Beanstalk and AWS App Runner using the image from the ECR repository.
After completing this Cloud Lab, you’ll be able to build Docker images for your web applications, push them to an ECR repository, and use that image to deploy your applications to Elastic Beanstalk and App Runner.
A high-level architecture diagram for this Cloud Lab is given below:
Before you start...
Try these optional labs before starting this lab.
Relevant Courses
Use the following content to review prerequisites or explore specific concepts in detail.
Frequently Asked Questions
How does AWS Elastic Beanstalk simplify deployment?
AWS Elastic Beanstalk simplifies deployment by handling the infrastructure, scaling, and application management for developers. You only need to upload your application code, and Beanstalk automatically provisions resources like EC2, load balancers, and databases to run your application.
What is AWS App Runner used for?
AWS App Runner is a fully managed service that allows developers to easily deploy and run containerized web applications and APIs without managing servers or infrastructure. It automates the build, deployment, and scaling process for containerized workloads.
What are AWS deployment services?
AWS provides a variety of deployment services to automate and simplify application and infrastructure management:
- AWS CloudFormation: An infrastructure as code (IaC) service that provisions and manages AWS resources using templates.
- AWS Elastic Beanstalk: Simplifies application deployment by automatically managing infrastructure, scaling, and monitoring.
- AWS CodeDeploy: Automates code deployments to Amazon EC2, on-premises servers, or AWS Lambda.
- Amazon Elastic Container Service (ECS): A managed container orchestration service to deploy and manage containerized applications.
- Amazon Elastic Kubernetes Service (EKS): A fully managed Kubernetes service to deploy, manage, and scale containerized workloads.
- AWS App Runner: Deploys containerized web applications and APIs without requiring infrastructure management.
- Amazon Lightsail: A simplified virtual private server (VPS) service for deploying applications and websites.
- Red Hat OpenShift Service on AWS (ROSA): A managed Kubernetes service to seamlessly deploy OpenShift clusters on AWS.
How do you deploy a React app on AWS?
To deploy a React application on AWS, follow these steps:
- Create a new React application: Use npx create-react-app to set up a fresh React app.
- Initialize a GitHub repository: Push your React app code to a GitHub repository.
- Install the Amplify packages: Set up AWS Amplify in your project using the Amplify CLI and required libraries.
- Deploy your app with AWS Amplify: Connect the GitHub repository to AWS Amplify and configure the build settings.
- Automatically deploy code changes: AWS Amplify will automatically build and deploy updates whenever you push new changes to the repository.
What are the steps to deploy a Docker container on AWS Elastic Container Repository (ECR)?
Follow the steps below to deploy a docker container on ECR:
- Build a docker image using a Dockerfile.
- Authenticate Docker with AWS ECR to enable secure communication.
- Create an ECR repository using the AWS Management Console or CLI.
- Build your Docker image and tag it to match the ECR repository URI.
- Push the Docker image to the ECR repository.
- Use AWS services like Amazon ECS or AWS App Runner to deploy and run the container.
What are the deployment strategies in AWS?
AWS supports various deployment strategies, including:
- All-at-once deployments: Deploys updates to all instances simultaneously.
- Rolling deployments: Updates parts of the application incrementally.
- Blue/Green deployments: Switches traffic between two environments to minimize downtime.
- Canary deployments: Gradually roll out changes to a small subset of users before full deployment.
- Linear deployments: Traffic is shifted in equal increments over a defined period, ensuring a controlled and gradual rollout.
Trusted by 1.4 million developers working at companies including
Your method is simple, straight to the point and I can practice with it everywhere, even from my phone, that's something I have never had in other learning platforms.

I highly recommend Educative. The courses are well organized and easy to understand.

I prefer Educative courses because they have a nice mix of text & images. I find that with full video courses, it can often be too easy to go into passive learning mode.

I prefer Educative courses because they have a nice mix of text & images. I find that with full video courses, it can often be too easy to go into passive learning mode.

Your method is simple, straight to the point and I can practice with it everywhere, even from my phone, that's something I have never had in other learning platforms.

I highly recommend Educative. The courses are well organized and easy to understand.

I prefer Educative courses because they have a nice mix of text & images. I find that with full video courses, it can often be too easy to go into passive learning mode.

Get access to Educative Cloud Labs
Copyright ©2025 Educative, Inc. All rights reserved.