how to pull docker image on ECR using cloudformation template
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
Solution 1:
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
https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_AWSCLI.html
Solution 2:
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