As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Solução de problemas de mensagens de erro do Amazon ECR
Em alguns casos, uma chamada de API que você iniciou por meio do console do Amazon ECR ou a AWS CLI sai com uma mensagem de erro. Algumas mensagens de erro comuns e possíveis soluções são explicadas abaixo.
HTTP 429: Muitas solicitações ou ThrottleException
Você pode receber um erro 429: Too Many Requests
ou ThrottleException
de uma ou mais ações do Amazon ECR ou chamadas de API. Isso indica que você está chamando um único endpoint no Amazon ECR repetidamente em um intervalo curto e que suas solicitações estão sendo limitadas. A suspensão ocorre quando as chamadas para um único endpoint de um único usuário ultrapassam um determinado limite em um período.
Cada operação de API no Amazon ECR tem um controle de utilização de taxas associada a ela. Por exemplo, a suspensão da ação GetAuthorizationToken
é de 20 transações por segundo (TPS), com permissão para uma intermitência de até 200 TPS. Em cada região, cada conta recebe um bucket que pode armazenar até 200 créditos GetAuthorizationToken
. Esses créditos são reabastecidos a uma taxa de 20 por segundo. Se seu bucket tem 200 créditos, você pode alcançar 200 transações de API GetAuthorizationToken
por segundo e sustentar 20 transações por segundo indefinidamente. Para obter mais informações sobre os limites de taxa do Amazon ECR APIs, consulteCotas de serviço do Amazon ECR.
Para gerenciar os erros de controle de utilização, implemente uma função de novas tentativas com backoff incremental no código. Para obter mais informações, consulte o comportamento de repetição no Guia de referência de ferramentas AWS SDKs e ferramentas. Outra opção é solicitar um aumento do limite de taxas, o que você pode fazer usando o console do Service Quotas. Para obter mais informações, consulteGerenciamento de cotas de serviço do Amazon ECR no AWS Management Console. .
HTTP 403: "O usuário [arn] não está autorizado a executar a [operação]”
Você poderá receber o seguinte erro ao tentar realizar uma ação com o 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: *
Isso indica que o usuário não tem as permissões para usar o Amazon ECR ou que essas permissões não estão configuradas corretamente. Se você realizar ações especificamente em um repositório do Amazon ECR, verifique se o usuário recebeu permissões para acessá-lo. Para obter mais informações sobre como criar e verificar permissões do Amazon ECR, consulte Gerenciamento de Identidade e Acesso para o Amazon Elastic Container Registry.
HTTP 404: erro "Repository Does Not Exist (O repositório não existe)"
Se você especificar um repositório do Docker Hub que não existe atualmente, o Docker Hub o criará automaticamente. Com o Amazon ECR, novos repositórios devem ser criados explicitamente para que poder serem usados. Isso impede que novos repositórios sejam criados de maneira acidental (por exemplo, devido a erros de digitação) e também garante que uma política de acesso de segurança apropriada seja atribuída explicitamente a todos os novos repositórios. Para obter mais informações sobre como criar repositórios, consulte Repositórios privados do Amazon ECR.
Erro: não é possível realizar um login interativo em um dispositivo não TTY
Se você receber o erro Cannot perform an interactive login from a non TTY
device
, as etapas de solução de problemas a seguir devem ajudar.
-
Verifique se você está usando a AWS CLI versão 2 e se não tem uma versão conflitante da AWS CLI versão 1 em seu sistema. Para obter mais informações, consulte Instalar ou atualizar a versão mais recente da AWS CLI.
-
Verifique se você configurou seu AWS CLI com credenciais válidas. Para obter mais informações, consulte Instalar ou atualizar a versão mais recente da AWS CLI.
-
Verifique se a sintaxe do seu AWS CLI comando está correta.