Risoluzione dei problemi relativi ai messaggi di errore Amazon ECR - Amazon ECR

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Risoluzione dei problemi relativi ai messaggi di errore Amazon ECR

In alcuni casi, una chiamata API che hai avviato tramite la console Amazon ECR o AWS CLI esce con un messaggio di errore. Alcuni messaggi di errore comuni e possibili soluzioni sono spiegati di seguito.

HTTP 429: troppe richieste o ThrottleException

Potresti ricevere un 429: Too Many Requests errore o un ThrottleException errore da una o più azioni o chiamate API di Amazon ECR. Ciò indica che stai chiamando un singolo endpoint in Amazon ECR più volte in un breve intervallo di tempo e che le tue richieste vengono limitate. Il throttling si verifica quando le chiamate a un singolo endpoint da uno stesso utente superano una certa soglia in un periodo di tempo.

A ogni operazione API in Amazon ECR è associata una limitazione di velocità. Ad esempio, la limitazione per l'operazione GetAuthorizationToken è di 20 transazioni al secondo (TPS), con un aumento consentito fino a 200 TPS. In ogni regione, ogni account riceve un bucket che può ospitare fino a 200 crediti GetAuthorizationToken. Questi crediti vengono riforniti a una velocità di 20 al secondo. Se il bucket ospita 200 crediti, puoi ottenere 200 transazioni API GetAuthorizationToken al secondo per un secondo, quindi mantenere 20 transazioni al secondo a tempo indeterminato. Per ulteriori informazioni sui limiti di velocità per le API di Amazon ECR, consulta. Service Quotas di Amazon ECR.

Per gestire gli errori di throttling, implementa una funzione di nuovo tentativo con backoff incrementale nel tuo codice. Per ulteriori informazioni, consulta Retry behavior nella Guida di riferimento agli AWS SDK and Tools. Un'altra opzione è richiedere un aumento del limite di velocità, cosa che puoi fare utilizzando la console Service Quotas. Per ulteriori informazioni, consulta Gestione delle Service Quotas Amazon ECR in AWS Management Console.

HTTP 403: "User [arn] is not authorized to perform [operation]" (HTTP 403: l'utente [arn] non è autorizzato a eseguire [operazione])

Puoi visualizzare il seguente errore quando tenti di eseguire un'operazione con Amazon ECR:

$ aws ecr get-login-password A client error (AccessDeniedException) occurred when calling the GetAuthorizationToken operation: User: arn:aws:iam::account-number:user/username is not authorized to perform: ecr:GetAuthorizationToken on resource: *

Ciò indica che il tuo utente non ha ricevuto le autorizzazioni per utilizzare Amazon ECR oppure che quelle autorizzazioni non sono configurare correttamente. In particolare, se esegui delle operazioni su un repository Amazon ECR, verifica che l'utente abbia ricevuto le autorizzazioni per accedere a quel repository. Per ulteriori informazioni sulla creazione e le verifica delle autorizzazioni per Amazon ECR, consulta Identity and Access Management per Amazon Elastic Container Registry.

Errore HTTP 404: "Repository Does Not Exist" (HTTP 404: il repository non esiste)

Se specifichi un repository del Docker Hub che non esiste, Docker Hub lo crea automaticamente. Con Amazon ECR, i nuovi repository devono essere creati esplicitamente prima di poter essere utilizzati. Ciò impedisce la creazione accidentale di nuovi repository (ad esempio, per errori di digitazione) e assicura inoltre che venga assegnata una policy d'accesso adeguata ai nuovi repository. Per ulteriori informazioni sulla creazione dei repository, consulta Repository Amazon ECR privati.

Errore: impossibile eseguire un accesso interattivo da un dispositivo non TTY

Se ricevi l'errore Cannot perform an interactive login from a non TTY device, i seguenti passaggi per la risoluzione dei problemi dovrebbero aiutarti.