Een geslaagde verbinding met een privé-ECR-register rondt een imagepull niet af. ECR levert het manifest, terwijl Amazon S3 de imagelagen opslaat. Een bypass die alleen het register dekt, kan de laagdownload daardoor een andere route laten nemen.

Controleer voor privétoegang via VPC-endpoints beide paden:

  • Het ECR-interface-endpoint en de bijbehorende privé-DNS-configuratie.
  • Het S3-endpoint, de bijbehorende routetabellen en het beleid dat toegang tot de laagbucket van ECR toestaat.

Zet daarna de relevante bypass-namen op het proces dat de pull uitvoert. Voor een native Docker Engine met een bestaande proxyconfiguratie in daemon.json is een illustratieve us-east-2-configuratie:

{
  "proxies": {
    "http-proxy": "http://proxy.example:8080",
    "https-proxy": "http://proxy.example:8080",
    "no-proxy": "123456789012.dkr.ecr.us-east-2.amazonaws.com,prod-us-east-2-starport-layer-bucket.s3.us-east-2.amazonaws.com"
  }
}

Voeg de bedoelde regels samen met de overige instellingen van de daemon en de bestaande bypasslijst. Als andere downloads van openbare registers een openbare tussenpartij mogen gebruiken, levert de HTTP-proxylijst kandidaten voor proxy-URL's zonder account; behoud de bypasses voor privé-ECR en S3. Vervang het account, de regio en de hostnaam voor laagdownloads door de namen die de pull daadwerkelijk gebruikt. S3-naamvormen en endpointconfiguraties kunnen verschillen; dit voorbeeld is geen volledige lijst van AWS-endpoints. Het toepassen van de daemonconfiguratie vereist de bedoelde herstart van de daemon. Docker Desktop gebruikt zijn eigen proxyinstellingen.

Een bypass kiest een directe route. Hij kan geen ontbrekend S3-endpoint aanmaken, geen routetabel koppelen, geen buckettoegang verlenen en geen privé-DNS repareren. Bevestig die afhankelijkheden voordat je de bypass uitbreidt naar brede AWS-domeinen.

De container-proxyinstellingen van de Docker-client configureren de imagedownloads van de daemon niet. Ook een AWS CLI-commando dat ECR-inloggegevens ophaalt, heeft zijn eigen proxyconfiguratie; neem de API-bestemming op als dat afzonderlijke verzoek ook privétoegang nodig heeft.

Gerelateerde artikelen