尝试登录ECR失败,并显示-no-include-email错误

Los*_*ost 5 amazon-ec2 docker

我正在使用此命令登录我的EC2上的docker

$(aws ecr get-login --registry-ids xxxxxxx --region us-west-1 --no-include-email)

当我这样做时,我得到以下错误:

Unknown options: --no-include-email

我错过了什么?

小智 18

以上描述是正确的,步骤如下:

  1. sudo apt install awscli
  2. sudo apt-get install python3-pip
  3. sudo pip3 install --upgrade awscli

参考:https://github.com/aws/aws-cli/issues/2676


Adi*_*iii 17

答案已经给出,但它不起作用aws-cli v2,所以作为答案发布可能会帮助其他人

$(aws ecr get-login --no-include-email --region us-west-2)
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:

  aws help
  aws <command> help
  aws <command> <subcommand> help
aws: error: argument operation: Invalid choice, valid choices are:

Run Code Online (Sandbox Code Playgroud)

要使用aws-cli V2获取登录令牌,您可以尝试

aws ecr get-login-password | docker login --username AWS --password-stdin 1234567890.dkr.ecr.us-west-2.amazonaws.com/reponame
Run Code Online (Sandbox Code Playgroud)

要安装 AWS-CLI V2,您可以在此处查看

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
Run Code Online (Sandbox Code Playgroud)


Bin*_* Ho 8

在 v2中尝试这个awscli(但仍然有效1.9.0

aws ecr get-login-password --region ap-northeast-1 --profile your-profile | docker login --username AWS --password-stdin <the_id>.dkr.ecr.ap-northeast-1.amazonaws.com/<repo_name>
Run Code Online (Sandbox Code Playgroud)

你可以改变:

  • region
  • profile您在计算机上配置多个 AWS 配置文件。
  • the_id是一个像这样的数字12314311400
  • 例如repo_namemy-api-repo

希望这有帮助!


Jay*_*sey 6

您可能正在使用旧版的CLI工具。使用较新版本的docker(17.09)和aws-cli(1.11.117&1.11.173)我没有收到此错误

请参阅此处的注释:http : //docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_AWSCLI.html#AWSCLI_get-login

http://docs.aws.amazon.com/cli/latest/reference/ecr/get-login.html

pip install --upgrade --user awscli

您可能需要使用,pip3或者pip2如果您使用自制软件