How to push Docker images into AWS ECR

Introduction

Docker is a container or a software platform that allows you to build, test, and deploy distributed applications. Docker Container can be explained as a running instance of an image, and Docker Images can be created by including commands and instructions line by line in a text file, which is called Dockerfile.

Docker Images are used to create Docker containers. Images contained the application files, configuration files, or multiple images e.g Ubuntu, and the Dockerfile as well.

Dockerfile consists of many commands which will get execute step by step in its separate or temporary container and the container will get automatically removed as the command will get executed.
There will be a main Container in which all the sub-containers will get created and deleted automatically.

In this tutorial, we will push the Docker image into the AWS ECR registry.

Prerequisites

  • A Docker image
  • AWS login credentials
  • AWS ECR registry
  • Need permissions to IAM role to access ECR
  • Services of Docker should be up and running

Steps to Push Docker Images into AWS ECR

  • Step-1: AWS Authentication
  • Step-2: Get Docker images
  • Step-3: Tagging
  • Step-4: Push the image into ECR

AWS Authentication

You must log in to AWS ECR from Docker client. To authenticate an Amazon ECR registry to Docker with get-login-password, run the command: “aws ecr get-login-password”.

Note: “Specify the AWS username and registry URI when passing the auth token to the command for docker login.”

Command to authenticate with AWS ECR registry:

aws ecr get-login-password --region us-west-1 | docker login --username zehntech --password-stdin aws_account_id.dkr.ecr.us-west-1.amazonaws.com

Get Docker Images

To get the list of docker images, run below command in your Docker CLI tool:

docker images

This will list all the docker images created in your docker environment.

Copy the Docker Image ID which you want to push into the AWS ECR registry. 
You can get an image with the “repository:tag” value or with the image ID in the output of the above command.

Tagging

To get the list of docker images, run below command in your Docker CLI tool:

docker images

This will list all the docker images created in your docker environment.

Copy the Docker Image ID which you want to push into the AWS ECR registry. 
You can get an image with the “repository:tag” value or with the image ID in the output of the above command.

Push the image into ECR

Command to Push the image into ECR:

docker push aws_account_id.dkr.ecr.region.amazonaws.com/zehntech-app:latest

You can review the Amazon ECR registry for the confirmation. The image should be visible there.

Note: You can apply multiple tags per image in AWS ECR. The default maximum value is 100 tags.

Summary

In this tutorial, we have authenticated to the Amazon ECR registry from Docker CLI using the “aws ecr get-login-password” command then get tagged the Docker image and pushed the image into the ECR registry.

Related Posts