Wie behebe ich den Fehler „error pulling image configuration: error parsing HTTP 403 response body“ in Amazon ECS beim Abrufen eines Docker-Images aus Amazon ECR?

Lesedauer: 2 Minute
0

Wenn ich ein Docker-Image aus Amazon Elastic Container Registry (Amazon ECR) in Amazon Elastic Container Service (Amazon ECS) abrufe, erhalte ich die folgende Fehlermeldung: „error pulling image configuration: error parsing HTTP 403 response body.“

Kurzbeschreibung

Amazon ECR verwendet Amazon Simple Storage Service (Amazon S3), um Ihre Image-Ebenen zu speichern. Wenn Ihre Container Images von Amazon ECR herunterladen, müssen sie auf Amazon ECR zugreifen, um das Image-Manifest abzurufen, und dann auf Amazon S3, um die Image-Ebenen herunterzuladen. Im Folgenden finden Sie den Amazon-Ressourcennamen (ARN) des Amazon S3-Buckets, der die Ebenen für jedes Docker-Image enthält.

arn:aws:s3:::prod-region-starport-layer-bucket/*

Wenn Sie einen S3-Gateway-Endpunkt in einer Routing-Tabelle mit einer Richtlinie verwenden, die den Zugriff auf starport-layer-bucket einschränkt, erhalten Sie die folgende Fehlermeldung:

error pulling image configuration: error parsing HTTP 403 response body: invalid character '<' looking for beginning of value:
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>
SAMPLE-REQUEST-ID</RequestId><HostId>SAMPLE-HOST-ID</HostId></Error>"

Standardmäßig erhalten Sie vollen Zugriff auf alle Ressourcen, wenn Sie einen Gateway-Endpunkt in Amazon S3 erstellen.

Wenn Sie über eine benutzerdefinierte Richtlinie verfügen, die den Zugriff auf bestimmte Ressourcen ermöglicht, müssen Sie den starport-layer-bucket-ARN zu Ihrer Amazon S3-Richtlinie hinzufügen, um den Fehler zu beheben.

Lösung

1.Öffnen Sie die Amazon Virtual Private Cloud (Amazon VPC)-Konsole.

2.Wählen Sie im Navigationsmenü Endpunkte aus.

3.Wählen Sie den S3-Endpunkt aus der Liste aus.

4.Wählen Sie die Registerkarte Richtlinie und dann Richtlinie bearbeiten aus.

5.Fügen Sie im Abschnitt Ressource der Richtlinie den folgenden ARN hinzu:

arn:aws:s3:::prod-region-starport-layer-bucket/*

**Hinweis:**Vergewissern Sie sich, dass der ARN Ihre AWS-Region einschließt.

Sehen Sie sich als Referenz die folgende Beispielrichtlinie an:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Access-to-specific-buckets",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "s3:*",
      "Resource": [
        "arn:aws:s3:::prod-us-east-1-starport-layer-bucket/*"
      ]
    }
  ]
}

Ähnliche Informationen

Den Amazon S3-Gateway-Endpunkt erstellen

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren