прапор докерів невідомий скорочений прапор: 'e'


121

Я щойно оновив свою версію докера і дізнався цю команду

aws ecr get-login

більше не працює. Отримана помилка:

невідомий прапор стенограми: 'e' in -e '. Здається, що докер більше не підтримує прапор -e.

Чи є спосіб це виправити?

Встановлені версії:

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

1
І саме тому ми не використовуємо короткі параметри в інтерфейсах, сценаріях та будь-якому іншому, що коли-небудь може перейти в очі користувачам, які не чудово пам'ятають кожен варіант командного рядка використовуваних інструментів. Це може бути поза темою, але я думаю, що це важливо підкреслити, тому що кожен розробник програмного забезпечення, який стикається з подібними питаннями, повинен здійснити це з'єднання, і надто багато не стане. (Оскільки, якщо варіант, який передається докер, був чимось подібним --email, це зменшило б зусилля та збільшило шанси користувачів, які виявляють --no-include-emailсамостійно.)
mtraceur

Відповіді:


201

додайте це до свого дзвінка

--no-include-email

ось новий дійсний синтаксис:

aws ecr get-login   ${normal_params_here}   --no-include-email
aws ecr get-login   --region us-east-1      --no-include-email  # for example

Ця нова опція доступна в AWS CLI версії 1.11.91, випущеної 23.05.2017 ... випустіть її для оновлення:

pip install --upgrade awscli

дивіться деталі тут

https://github.com/docker/for-mac/isissue/1762

https://github.com/aws/aws-cli/isissue/1926

Цитувати :

"Ви повинні були отримати повідомлення Amazon близько 23 травня 2017 року про новий --no-include-emailпрапор на aws ecr get-loginсумісність із [Docker] 17.06.0"

Наприклад, після того, як я видаю наступне

aws ecr get-login   --region us-east-1      --no-include-email  

він показує мені наступний вихід

docker login -u AWS -p foobarZUFtSzg4SDBUa0lDSEpTNUQ5M3pDVDhHNi9jS2s3SExhQWpheEVMWTlmY0pNWlphOEN5M2hJTUFoMDlJczd0anVoRk9CKzE1ODdBdmQ1ZzRNR3pKa1lMZ2NTOGo4Mk1sZGlwdDRjQlJyOERvaDFiaEt6TWRlVHkzalA2Um5RSTBNNW5qRW9WL1ZlaEhxMTV4bjl5aXQrV1NXMnp1NWNwek1JQWVxRjd0YWhZWkxxYmdRVjdldE9LQUY3dW5OWFFSM20vY0x4L1ZKWW9BZzlNM0wrQy8vdENEQXRXMFpvTTNrVXNxTHg4MEFQQXJRV08yZ1BRb0VLcHo1ZE1sc1JLS25hWit2eGVzODdlUFZ3OS9tT29BV0pEUzBSWUx0ellsUUVKNUpadXlkbXlnL2owL2N5VUJaSWNpajJaVExrYTlwRm9STkVhejVZKzhBU3N4S1c4RWNIOThuNi8xcDRDU09lcnlQUjUwYnRGZ1RtWk5LNVRTaW92ZXhNYUs2RFpLTU83MHgvYlpRcXgxYWh5U2FFTXR5RlMxempqVlFva3JVeTYrQVMwL09pQ2NRV1o2S01kMDc5akNDdE5YakFzamNsUTUzZVE4TUFUTWIrYTBBNFlIaDJNcFJ2RjU5dWNHS2tYUkl4WGNVY1Zpc2l4NmJNaEo4dEZsK0hEem5PSXRHRmh3b3lZV093OEw3dFlwbFFTSEFTaVdsemRSVTNvQmREQ2FCZys3R09BUW96SWxsWnV2Yk51cG1qWkFzMWE5MzdMelQ0Y25lemYwbWZUSFBDVVpzYzQ2Wk1jWkl4MjMrU0lpL3g3aFZ1NXJzcklVVFJTd1UwRUpLbFNIUkZKZ0xqZ0R1bnVrSGlrY0pnZEhseDlKRmloWEM3REF6bDByMkc4LzN1SG4xeEFCdWVlN2tUU2dsS0lTcW45ejI3eUlCc3BjOUhxU2JuUzNTOGVJamJvdmdaQWNNL1R2YUVTTEdsM0hrUnlXb04zUVhFM2NWa1poR1ZDZEJCTlRiekkvMUlLVENnNnlKNTVibThMTE0rcEdFQ1h1M1JwWWZUU3VLOVc0NytQVkJUSWtsNnhrd0Jobm9nZ1MwUkYyc2xNb1F6S08zZHhva24zN0dSS1hoOXhSbG85RVlWOHZLRzVzbjdhbnhpby9EL3ZDbHFXWTlLRGVwOGxMK0NhR3lpbDRHZ3JwWmtWampaaExzQ1cyTWk0L3NXUTEyV0ZCR0JnOSIsImRhdGFrZXkiOiJBUUVCQUhod20wWWFJU0plUnRKbTVuMUc2dXFlZWtYdW9YWFBlNVVGY2U5UnE4LzE0d0FBQUg0d2ZBWUpLb1pJaHZjTkFRY0dvRzh3YlFJQkFEQm9CZ2txaGtpRzl3MEJCd0V3SGdZSllJWklBV1VEQkFFdU1CRUVESnpKWXZhbXBFRkFSVUx5bUFJQkVJQTcwZk1ZUlU4bG9RVnRwMWJJUHRoZktTOFMzZVpZNS8rT0orL0RmSjZXNVpiK0p0TURXZmZ5Rm9vc0gzMDFVWS9OQ1lzb2hWM1FER2E3NmZ3PSIsInZlcnNpb24iOiIyIiwidHlwZSI6IkRBVEFfS0VZIiwiZXhwaXJhdGlvbiI6MTU2NDkxNTYyOH0= https://092412696969.dkr.ecr.us-east-1.amazonaws.com

так щоб завершити вхід докера в Aws сховище копіювати пасту N вище назад в той же термінал, як і ...

 docker login -u AWS -p foobarZUFtSzg4SDBUa0lDSEpTNUQ5M3pDVDhHNi9jS2s3SExhQWpheEVMWTlmY0pNWlphOEN5M2hJTUFoMDlJczd0anVoRk9CKzE1ODdBdmQ1ZzRNR3pKa1lMZ2NTOGo4Mk1sZGlwdDRjQlJyOERvaDFiaEt6TWRlVHkzalA2Um5RSTBNNW5qRW9WL1ZlaEhxMTV4bjl5aXQrV1NXMnp1NWNwek1JQWVxRjd0YWhZWkxxYmdRVjdldE9LQUY3dW5OWFFSM20vY0x4L1ZKWW9BZzlNM0wrQy8vdENEQXRXMFpvTTNrVXNxTHg4MEFQQXJRV08yZ1BRb0VLcHo1ZE1sc1JLS25hWit2eGVzODdlUFZ3OS9tT29BV0pEUzBSWUx0ellsUUVKNUpadXlkbXlnL2owL2N5VUJaSWNpajJaVExrYTlwRm9STkVhejVZKzhBU3N4S1c4RWNIOThuNi8xcDRDU09lcnlQUjUwYnRGZ1RtWk5LNVRTaW92ZXhNYUs2RFpLTU83MHgvYlpRcXgxYWh5U2FFTXR5RlMxempqVlFva3JVeTYrQVMwL09pQ2NRV1o2S01kMDc5akNDdE5YakFzamNsUTUzZVE4TUFUTWIrYTBBNFlIaDJNcFJ2RjU5dWNHS2tYUkl4WGNVY1Zpc2l4NmJNaEo4dEZsK0hEem5PSXRHRmh3b3lZV093OEw3dFlwbFFTSEFTaVdsemRSVTNvQmREQ2FCZys3R09BUW96SWxsWnV2Yk51cG1qWkFzMWE5MzdMelQ0Y25lemYwbWZUSFBDVVpzYzQ2Wk1jWkl4MjMrU0lpL3g3aFZ1NXJzcklVVFJTd1UwRUpLbFNIUkZKZ0xqZ0R1bnVrSGlrY0pnZEhseDlKRmloWEM3REF6bDByMkc4LzN1SG4xeEFCdWVlN2tUU2dsS0lTcW45ejI3eUlCc3BjOUhxU2JuUzNTOGVJamJvdmdaQWNNL1R2YUVTTEdsM0hrUnlXb04zUVhFM2NWa1poR1ZDZEJCTlRiekkvMUlLVENnNnlKNTVibThMTE0rcEdFQ1h1M1JwWWZUU3VLOVc0NytQVkJUSWtsNnhrd0Jobm9nZ1MwUkYyc2xNb1F6S08zZHhva24zN0dSS1hoOXhSbG85RVlWOHZLRzVzbjdhbnhpby9EL3ZDbHFXWTlLRGVwOGxMK0NhR3lpbDRHZ3JwWmtWampaaExzQ1cyTWk0L3NXUTEyV0ZCR0JnOSIsImRhdGFrZXkiOiJBUUVCQUhod20wWWFJU0plUnRKbTVuMUc2dXFlZWtYdW9YWFBlNVVGY2U5UnE4LzE0d0FBQUg0d2ZBWUpLb1pJaHZjTkFRY0dvRzh3YlFJQkFEQm9CZ2txaGtpRzl3MEJCd0V3SGdZSllJWklBV1VEQkFFdU1CRUVESnpKWXZhbXBFRkFSVUx5bUFJQkVJQTcwZk1ZUlU4bG9RVnRwMWJJUHRoZktTOFMzZVpZNS8rT0orL0RmSjZXNVpiK0p0TURXZmZ5Rm9vc0gzMDFVWS9OQ1lzb2hWM1FER2E3NmZ3PSIsInZlcnNpb24iOiIyIiwidHlwZSI6IkRBVEFfS0VZIiwiZXhwaXJhdGlvbiI6MTU2NDkxNTYyOH0= https://092412696969.dkr.ecr.us-east-1.amazonaws.com
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
WARNING! Your password will be stored unencrypted in /home/pualu/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

тепер ви увійшли до сховища доків aws


4
Зауважте, що для цього може знадобитися оновлення awsкліпу до останньої версії.
брофа

3
sudo pip install
Phil Strong

1
Ви врятували мене <3
DaniG2k

1
Такі люди, які рятують бідних душ із встановленими термінами. Спасибі
Альфонсо Перес

1
Чомусь запуск pip install --upgrade awscliне оновлює aws і --no-include-emailпараметри не розпізнаються. Мені довелося скористатися відповіддю Amazija внизу
Джонатан Моралес Велес

18

якщо з якихось причин ви не можете оновити версію awscli, ви можете зробити невелику маніпуляцію з рядком, щоб змусити її працювати з sed.

наприклад:

$(aws ecr get-login --region eu-central-1 | sed -e 's/-e none//g')

це скине прапор -e, який не підтримується, і ви повинні мати можливість увійти.


1
це працювало для мене. все ще цікаво дізнатися, чому це було зроблено, тому що "-e" речі
Shree Prakash

@ShreePrakash лише старіша версія програми клі
Олександр Міллс

7

У мене було те саме питання, однак після відповіді Скотта Стенсленда це не вирішило.

У випадку, якщо це трапиться з кимось іншим, викидання "-e none" з команди вирішило проблему.


1
Працював для мене ...
codersofthedark

Відповідь, на яку ви посилаєтесь, пропонує додавати --no-include-emailдо ecr loginкоманди. Ефект цього полягає саме в тому, щоб відмовитися -e noneвід docker loginкоманди, яку він видає.
dsclose

1

Запустити заяву про вхід.

aws ecr get-login --region us-west-2

Потім видаліть прапор і значення -e noneз отриманого оператора. Отже, те, що ти працюєш, виглядатиме так ...

docker login -u AWS -p <long password hash> https://<image ID>.dkr.ecr.us-west-2.amazonaws.com 

1
Додавання --no-include-email до ecr get-loginкоманди опускає значення -e noneз виходу.
dsclose

1

Якщо ви не хочете оновлювати маркер аутентифікації вручну aws ecr get-login, замість цього можете встановити помічник облікових даних Amazon ECR . Помічник довіри подбає про автоматичне завантаження та оновлення жетонів, тому вам не потрібно буде оновити їх самостійно. Пакети доступні для Debian (Buster або новіші), Ubuntu (19.10 або новіші), Amazon Linux 2, Mac OS (через Homebrew) та деякі інші операційні системи, або ви можете завантажити бінарні випуски зі сторінки випусків .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.