I have created one ECR repository as public. Now, from my on-premises docker server, I build the image and I wanted to push the image in AWS ECR as public image. AWS has given option view push option but It did not work, getting below error while running the below command.
**docker login -u AWS -p $(aws ecr get-login-password --region ap-northeast-2)
public.ecr.aws/m8r0s3o9**
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: login attempt to https://public.ecr.aws/v2/ failed with status: 400 Bad Request
For private repository it works fine for me.
Any suggestion would be highly appreciable, do i need to add any role/policy to my aws user?
Thanks for your feedback guidance.
I found the issue, I was referring "view push command instructions" where respective region show in the command.
But for public repository need to run below command always.
so in short, When authenticating to a public registry, always authenticate to the us-east-1 Region when using the AWS CLI.
It resolved my issue and i was able to push the docker images in ECR. Rest command are same.