Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Docker login com a aws para o ECR - Erro: Cannot perform an interactive login from a non TTy device -

Erro após criar repositório no ECR. Ao copiar o código e inserir no terminal: aws ecr get-login-password --region us-east-1 | docker login--username AWS --password-stdin 824663932203.dkr.ecr.us-east-1.amazonaws.com apresenta o seguinte erro: *Error: Cannot perform an interactive login from a non TTy *device -

Podem me ajudar a sair desse ponto. Realmente, tentei de diversas maneiras. Eu uso VM linux (ubuntu).

Tentei de diversas formas e indo em fóruns e não obtive êxito. Agradeço o apoio desde já.

2 respostas

Troquei de ambiente (Linux para o windows) e continuou com o mesmo erro: Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Podem me ajudar? Estou há mais de uma semana pedindo um apoio de vocês e estou travado neste ponto.

O Docker e AWS CLI estão configurados corretamente tanto no ambiente windows como no linux. Criei uma politica em JSON via IAM, segue abaixo:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ecr:BatchCheckLayerAvailability", "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer", "ecr:GetAuthorizationToken", "ecr:GetRepositoryPolicy", "ecr:DescribeRepositories", "ecr:ListImages", "ecr:DescribeImages" ], "Resource": "*" } ] }

E Anexei ao meu User. Não sei mais o que fazer...

solução!

Consegui resolver sozinho. Escrevi o passo a passo que eu fui fazendo para conseguir passar dessa parte:

  • Passo a passo:

    • Verificar se o DOCKER e AWS CLI estão instalados na máquina;

    • Comando docker login para habilitar as credenciais;

    • Comando: aws configure e entrar com a access key e secret key;

    • Criei uma politica para o Amazon ECR através de um JSON no IAM e anexei ao meu usuário. JSON inserido abaixo: { "Version": "2012-10-17", "Statement": [

        {
            "Effect": "Allow",
            "Action": [
                "ecr:BatchCheckLayerAvailability",
                "ecr:BatchGetImage",
                "ecr:GetDownloadUrlForLayer",
                "ecr:GetAuthorizationToken",
                "ecr:GetRepositoryPolicy",
                "ecr:DescribeRepositories",
                "ecr:ListImages",
                "ecr:DescribeImages"
            ],
            "Resource": "*"
        }

      ] }

    • Instalei alguns modulos para o windows powershell: Install-Module -Name AWS.Tools.Common

    • Depois de várias tentativas, ao invés de inserir a linha inteira da configuração misturando AWS e Docker, eu separei e executei um comando de cada vez:

      • Comando inteiro: aws ecr get-login-password --region us-east-1 | docker login --username AWS --password SEU ID.dkr.ecr.sa-east-1.amazonaws.com
      • Comando AWS: aws ecr get-login-password - Resultado: Gera um HASH
      • Comando Docker: docker login - Resultado: Login Succeeded
    O grande resultado foi quando primeiro eu gerei o token na aws pelo aws ecr get-login-password e depois inseri docker login. Por algum motivo o comando indicado pelo push commands da aws estava dando erro - esse comando:  aws ecr get-login-password --region us-east-1 | docker login --username AWS --password SEU ID.dkr.ecr.sa-east-1.amazonaws.com


    Abraços!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software