Want to store and manage **Docker images** using **AWS Elastic Container Registry (ECR)**? In this tutorial, I’ll guide you through **pushing, pulling, and running Docker images** with AWS ECR, step by step.
By the end of this video, you’ll know how to:
**Create an AWS ECR repository**
**Push Docker images** to AWS ECR
**Pull images** from AWS ECR
**Run Docker containers** from an AWS ECR image
---
## ** What You’ll Learn in This Video:**
How to **set up AWS ECR**
How to **authenticate Docker with AWS ECR**
How to **push and pull Docker images**
How to run a **container from an AWS ECR image**
---
## ** Prerequisites**
**AWS CLI Installed** ([Download AWS CLI](https://aws.amazon.com/cli/))
**Docker Installed** ([Download Docker](https://www.docker.com/get-started))
An **AWS Account** ([Sign Up](https://aws.amazon.com/))
Basic knowledge of **Docker commands**
---
## ** Step 1: Create an AWS ECR Repository**
1⃣ **Login to AWS Console** → Go to **ECR (Elastic Container Registry)**
2⃣ Click **Create Repository**
3⃣ Choose **Public or Private** repository
4⃣ Copy the **repository URI** for later
Alternatively, create a repository using the AWS CLI:
```bash
aws ecr create-repository --repository-name my-docker-app
```
---
## ** Step 2: Authenticate Docker with AWS ECR**
Use the AWS CLI to log in to ECR:
```bash
aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin [aws_account_id].dkr.ecr.us-east-1.amazonaws.com
```
Replace **us-east-1** with your AWS region.
Replace **[aws_account_id]** with your actual AWS account ID.
---
## ** Step 3: Build and Tag a Docker Image**
If you have a **Dockerfile**, build the image:
```bash
docker build -t my-docker-app .
```
Tag the image with your ECR repository URL:
```bash
docker tag my-docker-app:latest [aws_account_id].dkr.ecr.us-east-1.amazonaws.com/my-docker-app:latest
```
---
## ** Step 4: Push the Docker Image to AWS ECR**
Now, push the image to your AWS ECR repository:
```bash
docker push [aws_account_id].dkr.ecr.us-east-1.amazonaws.com/my-docker-app:latest
```
Once uploaded, your image will be available in AWS ECR.
---
## ** Step 5: Pull the Docker Image from AWS ECR**
On another system or EC2 instance, **pull the image**:
```bash
docker pull [aws_account_id].dkr.ecr.us-east-1.amazonaws.com/my-docker-app:latest
```
To verify the pulled image, run:
```bash
docker images
```
---
## ** Step 6: Run a Docker Container from AWS ECR Image**
Run the container locally:
```bash
docker run -d -p 5000:5000 [aws_account_id].dkr.ecr.us-east-1.amazonaws.com/my-docker-app:latest
```
This command runs the container and maps port **5000** to your local machine.
---
## ** Common Issues & Fixes**
**Denied: requested access to the resource is denied**
**Fix:** Ensure your AWS CLI is configured with `aws configure`.
**Error: authentication required**
**Fix:** Re-run the `docker login` command to authenticate.
**Image not found when pulling**
**Fix:** Double-check the **repository name** and **region**.
---
## ** Who Is This Tutorial For?**
Developers working with **AWS & Docker**
DevOps engineers managing **container registries**
Anyone deploying **containerized applications**
---
## ** More AWS & Docker Tutorials:**
**How to Deploy a Dockerized Flask App on AWS ECS** → [Watch Now]
**How to Use AWS Lambda with Docker Containers** → [Watch Now]
**How to Set Up Continuous Deployment with AWS ECR & GitHub Actions** → [Watch Now]
---
## ** Like, Share & Subscribe!**
If this tutorial helped you, please **LIKE, SHARE, and SUBSCRIBE** for more **AWS, Docker, and DevOps tutorials**!
Have questions? Drop them in the **comments** below!
---
### ** Hashtags:**
#AWS #Docker #AWSCloud #ECR #ElasticContainerRegistry #DevOps #CloudComputing #Containerization #Microservices #DockerHub
Now you know how to **push, pull, and run Docker images using AWS ECR** like a pro!