docker oturum açma bilinmeyen kısaltma bayrağı: 'e'


121

Docker sürümümü yeni güncelledim ve bu komutu buldum

aws ecr get-login

artık çalışmıyor. Hata var:

bilinmeyen steno işareti: 'e' in -e`. Görünüşe göre docker artık -e bayrağını desteklemiyor.

Bunu düzeltmenin bir yolu var mı?

Yüklü sürümler:

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
Ve bu nedenle, arayüzlerimizde, komut dosyalarımızda ve kullanılan araçların her komut satırı seçeneğini mükemmel bir şekilde hatırlamayan kullanıcıların gözünden kaçabilecek her şeyde kısa seçenekleri kullanmıyoruz. Konu dışı olabilir, ancak vurgulamanın önemli olduğunu düşünüyorum, çünkü bunun gibi sorularla karşılaşan her yazılım geliştiricisinin bu bağlantıyı kurması gerekiyor ve çok fazla kişi olmayacak. (Çünkü docker'a aktarılan seçenek buna benzer bir şey --emailolsaydı, çabayı azaltır ve kullanıcıların --no-include-emailkendi başlarına keşfetme olasılıklarını
artırırdı

Yanıtlar:


201

bunu aramana ekle

--no-include-email

işte yeni geçerli sözdizimi:

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

Bu yeni seçenek, 23.05.2017 tarihinde piyasaya sürülen 1.11.91 sürümünden itibaren AWS CLI'de mevcuttur ... yükseltmek için bunu yayınlayın:

pip install --upgrade awscli

ayrıntılara buradan bakın

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

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

alıntılamak :

" 23 Mayıs 2017 civarında, [Docker] 17.06.0 ile uyumluluk için yeni bayrakla ilgili olarak Amazon'dan bir e-posta bildirimi almış olmalısınız"--no-include-emailaws ecr get-login

Örneğin aşağıdakileri yayınladıktan sonra

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

bana aşağıdaki çıktıyı gösteriyor

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

bu yüzden, aws deposuna docker girişini tamamlamak için kopyala N yapıştırın, yukarıdaki gibi aynı terminale geri yapıştırı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

şimdi aws docker deposuna giriş yaptınız


4
Bunun, awscli'yi en son sürüme güncellemeyi gerektirebileceğini unutmayın .
broofa

3
sudo pip install --upgrade awscli
Phil Strong

1
Beni kurtardınız <3
DaniG2k

1
Zavallı ruhları burada teslim tarihleri ​​olan kurtaranlar gibiler. Teşekkürler
Alfonso Pérez

1
Bazı nedenlerden dolayı, çalıştırmak pip install --upgrade awscliaws'yi güncellemiyor ve --no-include-emailseçenekler tanınmıyor. Cevabı aşağıdaki amazia'dan kullanmak zorunda kaldım
Jonathan Morales Vélez

18

Eğer herhangi bir nedenle awscli sürümünü yükseltemezseniz, sed ile sizin için çalışmasını sağlamak için küçük bir dize manipülasyonu yapabilirsiniz.

Örneğin:

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

bu desteklenmeyen -e bayrağını kaldırır ve oturum açabilmeniz gerekir.


1
benim için çalıştı. neden yanıldığını hala merak ediyorum çünkü '-e' şeyler
Shree Prakash

@ShreePrakash, cli programının eski bir sürümü
Alexander Mills

7

Ben de aynı sorunu yaşadım ancak Scott Stensland'ın cevabının ardından çözülmedi.

Başkasının başına gelmesi durumunda, komuttan '-e none' seçeneğinin kaldırılması sorunu çözdü.


1
Benim için çalıştı ...
codersofthedark

Referans --no-include-emailverdiğiniz yanıt , ecr loginkomuta eklemeyi önerir . Bunun etkisi, tam olarak -e noneçıktı verdiği docker loginkomuttan düşmektir.
2019

1

Giriş ifadesini çalıştırın.

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

Ardından, -e nonesonuçtaki ifadeden bayrağı ve değeri kaldırın . Öyleyse, koştuğun şey nasıl görünür ...

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

1
Ekleme --no-include-email için ecr get-loginkomutun atlar -e noneçıkışından itibaren.
2019

1

Kimlik doğrulama jetonunuzu manuel olarak yenilemekten kaçınmayı tercih ederseniz bunun yerine Amazon ECR kimlik bilgisi yardımcısınıaws ecr get-login yükleyebilirsiniz . Kimlik bilgisi yardımcısı, jetonların otomatik olarak alınması ve güncellenmesiyle ilgilenir, böylece kendiniz yenilemeniz gerekmez. Paketler Debian (Buster veya daha yenisi), Ubuntu (19.10 veya daha yenisi), Amazon Linux 2, Mac OS (Homebrew aracılığıyla) ve diğer birkaç işletim sistemi için mevcuttur veya ikili sürümleri sürümler sayfasından indirebilirsiniz .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.