I just updated my docker version and found out that command
aws ecr get-login
is not working anymore. Got error:
unknown shorthand flag: 'e' in -e`. Seems that docker doesn't support -e flag anymore.
Is there a way to fix this?
Installed versions:
aws-cli/1.11.111 Python/2.7.10 Darwin/16.6.0 botocore/1.5.74
Docker version 17.06.0-ce-rc5, build b7e4173
add this to your call
--no-include-email
here is the new valid syntax :
aws ecr get-login ${normal_params_here} --no-include-email
aws ecr get-login --region us-east-1 --no-include-email # for example
This new option is available in AWS CLI as of version 1.11.91 released on 05/23/2017 ... issue this to upgrade :
pip install --upgrade awscli
see details here
https://github.com/docker/for-mac/issues/1762
https://github.com/aws/aws-cli/issues/1926
to quote :
"You should have received an email notification from Amazon around May 23 2017 about the new --no-include-email
flag on aws ecr get-login
for compatibility with [Docker] 17.06.0"
if for some reason you can't upgrade awscli version, you can do a little string manipulation to make it work for you with sed.
for example:
$(aws ecr get-login --region eu-central-1 | sed -e 's/-e none//g')
this will drop the -e flag that is not supported and you should be able to login.
I had the same issue however following Scott Stensland's answer did not solve it.
In case it will happen to someone else, dropping '-e none' from the command solved the issue.