CannotPullContainer Aufgabenfehler in Amazon ECS - Amazon Elastic Container Service

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.

CannotPullContainer Aufgabenfehler in Amazon ECS

Die folgenden Fehler weisen darauf hin, dass die Aufgabe nicht gestartet werden konnte, weil Amazon ECS das angegebene Container-Image nicht abrufen kann.

Anmerkung

Die 1.4 Fargate Plattformversion schneidet lange Fehlermeldungen ab.

Informationen dazu, wie Sie mithilfe von überprüfen können, ob bei Ihren gestoppten Aufgaben eine Fehlermeldung angezeigt wird AWS-Managementkonsole, finden Sie unterAufgabe-Beendet-Fehler in Amazon ECS anzeigen.

Die Aufgabe kann das Image nicht abrufen. Vergewissern Sie sich, dass die Rolle berechtigt ist, Images aus der Registry abzurufen.

Dieser Fehler weist darauf hin, dass die Aufgabe das in der Aufgabendefinition angegebene Image aufgrund von Berechtigungsproblemen nicht abrufen kann.

So beheben Sie dieses Problem

  1. Vergewissern Sie sich, dass das Bild in der vorhanden istrepository. Informationen zum Anzeigen Ihrer Images finden Sie unter Image-Details in Amazon ECR anzeigen im Benutzerhandbuch für Amazon Elastic Container Registry.

  2. Stellen Sie sicher, dass der role-arn über die richtigen Berechtigungen zum Abrufen des Images verfügt.

    Informationen zum Aktualisieren von Rollen finden Sie unter Aktualisieren von Berechtigungen für eine Rolle im Benutzerhandbuch für AWS Identity and Access Management .

    Die Aufgabe verwendet eine der folgenden Rollen:

Die Aufgabe kann 'image-name' nicht aus dem Amazon ECR-Repository 'repository URI' abrufen. Es besteht ein Verbindungsproblem zwischen der Aufgabe und Amazon ECR. Überprüfen Sie die Netzwerkkonfiguration der Aufgabe.

Dieser Fehler weist darauf hin, dass die Aufgabe keine Verbindung zu Amazon ECR herstellen kann. Überprüfen Sie die Verbindung zum repository URI Repository.

Weitere Informationen zum Verifizieren und Beheben dieser Probleme finden Sie unter Überprüfung, ob Amazon ECS die Aufgabenkonnektivität beendet hat.

Die Aufgabe kann das Image nicht abrufen. Überprüfen Sie die Netzwerkkonfiguration

Dieser Fehler weist darauf hin, dass die Aufgabe keine Verbindung zu Amazon ECR herstellen kann.

Weitere Informationen zum Verifizieren und Beheben dieser Probleme finden Sie unter Überprüfung, ob Amazon ECS die Aufgabenkonnektivität beendet hat.

CannotPullContainerError: Das Pull-Image-Manifest wurde 5 Mal wiederholt: Referenz konnte nicht aufgelöst werden

Dieser Fehler weist darauf hin, dass die Aufgabe das Image nicht abrufen kann.

Um dieses Problem zu lösen, können Sie Folgendes unternehmen:

  • Stellen Sie sicher, dass das in der Aufgabendefinition angegeben Image mit dem Image im Repository übereinstimmt.

  • Amazon ECS erzwingt die Stabilität der Image-Version. Wenn das Original-Image nicht mehr verfügbar ist, erhalten Sie diesen Fehler. Das Image-Tag ist Teil der Durchsetzung dieses Verhaltens. Ändern Sie das Image in der Aufgabendefinition von der Verwendung von :latest als Tag zu einer bestimmten Version. Weitere Informationen finden Sie unter Auflösung des Container-Images.

Weitere Informationen zum Verifizieren und Beheben dieser Probleme finden Sie unter Überprüfung, ob Amazon ECS die Aufgabenkonnektivität beendet hat.

API-Fehler (500): Get: net/http https://111122223333.dkr.ecr.us-east-1.amazonaws.com/v2/: Anfrage wurde abgebrochen, während auf eine Verbindung gewartet wurde

Dieser Fehler weist darauf hin, dass das Timeout für eine Verbindung überschritten wurde, weil keine Route zum Internet existiert.

Um dieses Problem zu lösen, können Sie:

  • Für Aufgabe in öffentlichen Subnetzen geben Sie beim Starten der Aufgabe ENABLED unter Auto-assign public IP (Öffentliche IP automatisch zuweisen) an. Weitere Informationen finden Sie unter Ausführen einer Anwendung als Amazon-ECS-Aufgabe.

  • Für Aufgaben in privaten Subnetzen geben Sie beim Starten der Aufgabe DISABLED (DEAKTIVIERT) für Auto-assign public IP (Öffentliche IP automatisch zuweisen) an und konfigurieren ein NAT-Gateway in Ihrer VPC, um Anforderungen an das Internet weiterzuleiten. Weitere Informationen finden Sie unter NAT-Gateways im Amazon VPC-Benutzerhandbuch.

API-Fehler

Diese Fehlermeldung weist auf ein Verbindungsproblem mit dem Amazon-ECR-Endpunkt hin.

Informationen zur Behebung dieses Problems finden Sie auf der Support Website unter How can I resolve the Amazon ECR error "CannotPullContainerError: API error“ in Amazon ECS.

write/var/lib/docker/tmp/GetImageBlob111111111: kein Platz mehr auf dem Gerät

Dieser Fehler weist darauf hin, dass nicht genügend Speicherplatz vorhanden ist.

Um dieses Problem zu lösen, müssen Sie Speicherplatz freigeben.

Wenn Sie das Amazon-ECS-optimierte AMI verwenden, können Sie mit dem folgenden Befehl die 20 größten Dateien auf Ihrem Dateisystem abrufen:

du -Sh / | sort -rh | head -20

Beispielausgabe:

5.7G    /var/lib/docker/containers/50501b5f4cbf90b406e0ca60bf4e6d4ec8f773a6c1d2b451ed8e0195418ad0d2
1.2G    /var/log/ecs
594M    /var/lib/docker/devicemapper/mnt/c8e3010e36ce4c089bf286a623699f5233097ca126ebd5a700af023a5127633d/rootfs/data/logs
...

In manchen Fällen kann das Stamm-Volume von einem ausgeführten Container ausgefüllt sein. Wenn der Container den Standardprotokolltreiber json-file ohne eine max-size-Beschränkung verwendet, kann die Protokolldatei einen Großteil des Speicherplatzes belegen. Mit dem Befehl docker ps können Sie überprüfen, welcher Container den Speicherplatz belegt. Hierzu wird der Verzeichnisname aus der Ausgabe oben der Container-ID zugewiesen. Zum Beispiel:

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 50501b5f4cbf amazon/amazon-ecs-agent:latest "/agent" 4 days ago Up 4 days ecs-agent

Bei Verwendung des Protokolltreibers json-file erfasst Docker standardmäßig die Standardausgabe (und Standardfehler) aller Container und schreibt diese in Dateien im JSON-Format. Sie können max-size als Protokolltreiberoption festlegen, was vermeidet, dass die Protokolldatei zu groß wird. Weitere Informationen finden Sie unter JSON-Protokollierungstreiber in der Docker-Dokumentation.

Nachfolgend finden Sie einen Ausschnitt aus einer Containerdefinition mit dieser Option:

{ "log-driver": "json-file", "log-opts": { "max-size": "256m" } }

Wenn Ihre Container-Protokolle zu viel Speicherplatz belegen, können Sie alternativ auch den Protokolltreiber awslogs verwenden. Der awslogs Protokolltreiber sendet die Protokolle an CloudWatch, wodurch der Speicherplatz freigegeben wird, der sonst für Ihre Container-Logs auf der Container-Instance verwendet werden würde. Weitere Informationen finden Sie unter Amazon ECS-Protokolle senden an CloudWatch .

Möglicherweise müssen Sie die Festplattengröße aktualisieren, auf die Docker zugreifen kann.

Weitere Informationen finden Sie unter CannotPullContainerError: Kein Speicherplatz mehr auf dem Gerät.

ERROR: toomanyrequests: Zu viele Anfragen oder Sie haben Ihr Abruf-Limit erreicht.

Diese Fehlermeldung weist auf eine Docker-Hub-Ratenbegrenzung hin.

Wenn eine der folgenden Fehlermeldungen angezeigt wird, treffen Sie wahrscheinlich die Tarifbeschränkungen des Docker-Hubs:

Weitere Informationen über die Docker-Hub-Ratenlimits finden Sie unter Grundlegendes zur Begrenzung der Docker-Hub-Rate.

Wenn Sie das Docker-Hub-Ratenlimit erhöht haben und Sie Ihre Docker-Pulls für Ihre Container-Instances authentifizieren müssen, finden Sie weitere Informationen unter Private-Registry-Authentifizierung für Container-Instances.

Fehlerantwort vom Daemon: Get: net/httpurl: Anfrage wurde abgebrochen, während auf eine Verbindung gewartet wurde

Dieser Fehler weist darauf hin, dass das Timeout für eine Verbindung überschritten wurde, weil keine Route zum Internet existiert.

Um dieses Problem zu lösen, können Sie:

  • Für Aufgabe in öffentlichen Subnetzen geben Sie beim Starten der Aufgabe ENABLED unter Auto-assign public IP (Öffentliche IP automatisch zuweisen) an. Weitere Informationen finden Sie unter Ausführen einer Anwendung als Amazon-ECS-Aufgabe.

  • Für Aufgaben in privaten Subnetzen geben Sie beim Starten der Aufgabe DISABLED (DEAKTIVIERT) für Auto-assign public IP (Öffentliche IP automatisch zuweisen) an und konfigurieren ein NAT-Gateway in Ihrer VPC, um Anforderungen an das Internet weiterzuleiten. Weitere Informationen finden Sie unter NAT-Gateways im Amazon VPC-Benutzerhandbuch.

ref pull wurde 1 mal wiederholt: konnte nicht kopiert werden:: Fehler beim Öffnen httpReaderSeeker: unerwarteter Statuscode

Diese Fehlermeldung weist auf einen Fehler beim Kopieren eines Images hin.

Lesen Sie die folgenden Berichte, um dieses Problem zu beheben:

Abruf-Zugriff verweigert

Diese Fehlermeldung weist darauf hin, dass kein Zugriff für das Image besteht.

Um dieses Problem zu beheben, müssen Sie möglicherweise Ihren Docker-Client mit Amazon ECR authentifizieren. Weitere Informationen finden Sie unter Private-Registry-Authentifizierung im Amazon-ECR-Benutzerhandbuch.

Pull-Befehl fehlgeschlagen: Panik: Laufzeitfehler: Ungültige Speicheradresse oder Nullzeiger-Derefenzierung

Dieser Fehler weist darauf hin, dass aufgrund einer ungültigen Speicheradresse oder einer Nullzeiger-Dereferenzierung kein Zugriff auf das Image möglich ist.

So beheben Sie dieses Problem

  • Vergewissern Sie sich, dass Sie über die Sicherheitsgruppenregeln verfügen, um Amazon S3 zu erreichen.

  • Wenn Sie Gateway-Endpunkte verwenden, müssen Sie in der Routing-Tabelle eine Route hinzufügen, um auf den Endpunkt zuzugreifen.

Fehler beim Abrufen des Bilds beim conf/error Abrufen der Bildkonfiguration

Dieser Fehler weist darauf hin, dass ein Ratenlimit erreicht wurde oder dass ein Netzwerkfehler vorliegt:

Informationen zur Behebung dieses Problems finden Sie unter Wie kann ich den Fehler "CannotPullContainerError" in meiner Amazon EC2 ECS-Starttyp-Aufgabe beheben?

Kontext abgebrochen

Dieser Fehler weist darauf hin, dass der Kontext abgebrochen wurde.

Die häufige Ursache für diesen Fehler liegt darin, dass die von Ihrer Aufgabe verwendete VPC über keine Route zum Abrufen des Container-Images von Amazon ECR verfügt.