63671
EC2インスタンス内からECRへのログインのため、以下のコマンドでログインを試みました。  
このEC2インスタンスのIAMRoleには[AmazonEC2ContainerRegistryReadOnly]ポリシーを付与しています。

```

    $(aws ecr get-login --region ap-northeast-1)
    
```

しかし以下のエラーメッセージが表示され、ログインは失敗します。

```

    unknown shorthand flag: 'e' in -e
    See 'docker login --help'.
    
```

なぜログインに失敗するのでしょうか？

`$()` の中身のみのコマンド `aws ecr get-login --region ap-northeast-1`
を叩くと、以下のようなレスポンスが返ってきます。

```

    docker login -u AWS -p ********= -e none https://************.dkr.ecr.ap-northeast-1.amazonaws.com
    
```
CC BY-SA 4.0
2020-03-08T14:19:58.293
63666
2020-03-08T22:21:43.830
2020-03-08T16:47:36.877
3060
9616
question
aws amazon-ec2 aws-ecr
EC2インスタンス内からECRにログインできない
Docker
17.06で`--email`/`-e`オプションは[廃止](https://github.com/docker/cli/pull/143)されていますが、AWS
CLIはデフォルトでは互換性のためにこれを出力しているそうです。

`aws ecr get-login`に`--no-include-email`オプションを付与することで-
eオプションが[出力されなく](https://docs.aws.amazon.com/cli/latest/reference/ecr/get-
login.html#options)なりますが、そもそも`get-login`は非推奨であり、[aws-cli
v2で廃止](https://dev.classmethod.jp/cloud/aws/aws-cli-v2-ecr-get-login-
password/)されました。`get-login-password`を使用してください。
CC BY-SA 4.0
2020-03-08T22:21:43.830
63671
2020-03-08T22:21:43.830
2376
63666
answer