I want to use docker image hosted on ECR and i want to automate the pull operation using cloudformation template.

I attached IAM role with ECR full access to ec2 instance and it doesn't work.

i am doing docker pull 1234567897.dkr.ecr.us-west-2.amazonaws.com/repo:tag and iam getting the error Error response from daemon: Get https://1234567897.dkr.ecr.us-west-2.amazonaws.com/repo:tag/manifests/latest: no basic auth credentials


Using ECR, EC2 and docker, you are still required to do a docker login.

In the user data run

aws ecr get-login --no-include-email > login.sh

bash login.sh

then you should be able to run

docker pull ecr_registry/repo:tag



If you are running a EC2 Instance running Windows then you need to run the powershell equivalent command of aws ecr get-login which is

Invoke-Expression –Command (Get-ECRLoginCommand –Region region).Command
  • This is working on windows, thanks – dsk Jul 5 '19 at 8:13

The accepted answer is correct, i will just add a one-liner example:


$(aws ecr get-login --no-include-email)

and then:

docker pull <ecr_host>/<repo>:<tag>
  • Not sure why this was down-voted. If you add —region for those of us not in the US ;-) it works very well. – Tim Jun 5 '20 at 14:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.