Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Authentifizierung in der privaten Registrierung bei Amazon ECR
Sie können das AWS Management Console, das oder das verwenden AWS CLI, um private Repositorys AWS SDKs zu erstellen und zu verwalten. Sie können mit diesen Methoden auch einige Aktionen für Images (z. B. auflisten oder löschen) ausführen. Diese Clients verwenden AWS Standardauthentifizierungsmethoden. Auch wenn Sie Amazon ECR API zum Push und Pull von Bildern verwenden können, ist es wahrscheinlicher, dass Sie den Docker CLI oder eine sprachspezifische Docker-Bibliothek verwenden.
Der Docker unterstützt CLI keine nativen Authentifizierungsmethoden. IAM Es müssen zusätzliche Schritte unternommen werden, damit Amazon Docker-Push- und Pull-Anfragen authentifizieren und autorisieren ECR kann.
Die in den folgenden Abschnitten beschriebenen Authentifizierungsmethoden der Registrierung sind verfügbar.
Verwenden des Amazon ECR Credential Helper
Amazon ECR bietet einen Docker-Credential-Helper, der das Speichern und Verwenden von Docker-Anmeldeinformationen beim Push und Abrufen von Bildern an Amazon erleichtert. ECR Installations- und Konfigurationsschritte finden Sie unter Amazon ECR Docker Credential Helper
Anmerkung
Der Amazon ECR Docker Credential Helper unterstützt derzeit keine Multi-Faktor-Authentifizierung ()MFA.
Verwendung eines Autorisierungs-Tokens
Der Berechtigungsbereich eines Autorisierungstokens entspricht dem des IAM-Prinzipals, der zum Abrufen des Autorisierungstokens verwendet wird. Ein Authentifizierungstoken wird für den Zugriff auf jede ECR Amazon-Registrierung verwendet, auf die Ihr IAM Principal Zugriff hat, und ist 12 Stunden gültig. Um ein Autorisierungstoken zu erhalten, müssen Sie den GetAuthorizationTokenAPIVorgang verwenden, um ein Base64-kodiertes Autorisierungstoken abzurufen, das den Benutzernamen AWS
und ein codiertes Passwort enthält. Der AWS CLI
get-login-password
Befehl vereinfacht dies, indem er das Autorisierungstoken abruft und dekodiert, das Sie dann an einen Befehl zur Authentifizierung weiterleiten können. docker
login
Um Docker bei einer ECR privaten Amazon-Registrierung mit get-login zu authentifizieren
Um Docker bei einer ECR Amazon-Registry mit zu authentifizieren get-login-password, führen Sie den aws ecr get-login-password Befehl aus. Wenn Sie das Authentifizierungstoken an den docker login Befehl übergeben, verwenden Sie den Wert
AWS
für den Benutzernamen und geben Sie die ECR Amazon-Registrierung an, bei der URI Sie sich authentifizieren möchten. Wenn Sie sich bei mehreren Registrierungen authentifizieren, müssen Sie den Befehl für jede Registrierung wiederholen.Wichtig
Bei einem Fehler installieren oder aktualisieren Sie auf die neueste AWS CLI-Version. Weitere Informationen finden Sie unter Installieren der AWS Command Line Interface im AWS Command Line Interface -Benutzerhandbuch.
-
get-login-password (AWS CLI)
aws ecr get-login-password --region
region
| docker login --username AWS --password-stdin
.dkr.ecr.aws_account_id
region
.amazonaws.com -
Holen- ECRLoginCommand ()AWS Tools for Windows PowerShell
(Get-ECRLoginCommand).Password | docker login --username AWS --password-stdin
.dkr.ecr.aws_account_id
region
.amazonaws.com
-
HTTPAPIAuthentifizierung verwenden
Amazon ECR unterstützt die Docker Registry HTTP API-H
Option for einen HTTP Autorisierungsheader hinzufügen curl und das vom get-authorization-token AWS CLI Befehl bereitgestellte Autorisierungstoken übergeben.
Um sich bei Amazon zu authentifizieren ECR HTTP API
-
Rufen Sie mit dem ein Autorisierungstoken ab AWS CLI und setzen Sie es auf eine Umgebungsvariable.
TOKEN=$(aws ecr get-authorization-token --output text --query 'authorizationData[].authorizationToken')
-
Um sich bei der zu authentifizierenAPI, übergeben Sie die
$TOKEN
Variable an die-H
Option voncurl. Der folgende Befehl listet beispielsweise die Image-Tags in einem ECR Amazon-Repository auf. Weitere Informationen finden Sie in der HTTP API Referenzdokumentation zur Docker Registry. curl -i -H "Authorization: Basic $TOKEN" https://
aws_account_id
.dkr.ecr.region
.amazonaws.com/v2/amazonlinux
/tags/listDie Ausgabe sieht wie folgt aus:
HTTP/1.1 200 OK Content-Type: text/plain; charset=utf-8 Date: Thu, 04 Jan 2018 16:06:59 GMT Docker-Distribution-Api-Version: registry/2.0 Content-Length: 50 Connection: keep-alive {"name":"amazonlinux","tags":["2017.09","latest"]}