ECR-Image-Pulls: Proxy-Bypass für S3-Layer-Downloads
Image-Pulls über den Registry-Host hinaus verfolgen, wenn eine private ECR-Route Layer-Downloads weiterhin an einen Unternehmensproxy schickt.
ECR-Login und Manifest-Abruf können funktionieren, während ein Image-Layer hängt. Amazon ECR speichert Layer in S3, und die VPC-Endpoint-Empfehlungen behandeln ECR-API, Registry und S3-Abrufpfad getrennt.
- Den Hostnamen des fehlgeschlagenen Layers ermitteln.Behalten Sie den Hostnamen aus der tatsächlichen Anfrage bei, statt anzunehmen, der Registry-Bypass decke den gesamten Pull ab.
- Den Absender lokalisieren.Prüfen Sie bei einem Docker-Pull die Proxy-Konfiguration des Daemons. Ein Beispiel für eine native Docker-Engine-daemon.json hält die privaten ECR- und S3-Layer-Pfade zusammen. Umgebungsvariablen, die für einen neuen Anwendungscontainer gedacht sind, können keinen Image-Download konfigurieren, der vor der Existenz dieses Containers stattfindet.
- Den vorgesehenen S3-Pfad prüfen.Passen Sie Bypass-Einträge an die regionalen Endpoint-Namen und die vom Client unterstützte Grammatik an. Privates DNS, Routentabellen, Endpoint-Richtlinie und Berechtigungen müssen diese Route ebenfalls unterstützen.
| Beobachteter Fehler | Was er aussagt |
|---|---|
| Proxy-Ablehnung | Die Layer-Anfrage hat einen Vermittler erreicht. |
| Zeitüberschreitung bei direkter Verbindung | Der Bypass hat möglicherweise direktes Routing gewählt, aber diese Route kann trotzdem unbrauchbar sein. |
Vermeiden Sie es, einen einzelnen fehlenden Layer-Host durch eine ungeprüfte Ausnahme für jeden Dienst in der Domain des Anbieters zu ersetzen. Eine direkte Ausnahme kann keine fehlende Gateway-Route erzeugen.
Nutzen Sie die Anfragen des tatsächlichen Images und die aktuellen Anbieteranweisungen. Besondere Inhalte, einschließlich fremder Windows-Layer, können andere Quellen ins Spiel bringen; eine historische Zwei-Host-Allowlist muss sie nicht abdecken.