오류: TTY가 아닌 장치에서 대화형 로그인을 수행할 수 없습니다.

오류: TTY가 아닌 장치에서 대화형 로그인을 수행할 수 없습니다.

저는 Mobaxterm을 사용하고 있으며 로컬 bash 터미널을 시작하고 이 명령을 시도했습니다. 그런데 오류가 보입니다. cmd windows 프롬프트나 powershell에서 동일한 명령을 실행할 수 있습니다. 해결 방법에 대한 제안을 주시면 감사하겠습니다. mobaxterm에 이미 있는 설정 중 일부를 사용했지만 그 중 아무 것도 작동하지 않았습니다.

/home/mobaxterm>docker login abcdef.azurecr.io
Error: Cannot perform an interactive login from a non TTY device

답변1

winpty명령 앞에 추가해 보십시오 docker ....

Windows에서 TTY를 활성화합니다. GitBash, Putty 및 MobaXTerm과 함께 작동합니다.

$ winpty docker login $ACR_REGISTRY
Username: appacr
Password:
Login Succeeded

답변2

도커 오류입니다. 각 Repo는 자체 환경 변수를 설정해야 합니다. 리포지토리 설정에서 모델에 DOCKER_USERNAME 및 DOCKER_PASSWORD를 설정하지 않으면 혼란스러운 도커 터미널(tty) 오류가 발생합니다.

답변3

--password-stdin지정된 플래그 사용문서.

aws ecr get-login-password | docker login --username AWS --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com

답변4

aws ecr제공된 예시와 같이 명령문에 지역을 지정해 보세요.여기:

aws ecr get-login-password --region region | docker login --username AWS --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com

이 방법을 통해 오류를 해결하려고 시도했을 때 AWS가 로케일 변수를 정의하는 방법에 까다롭다는 사실도 알게 되었습니다(그리고 영어를 사용하지 않는 사용자에 대한 합법적인 오류를 기꺼이 받아들이지 않음). 예를 들어 us-west-2호출 섹션에서는 이것이 충분하지만 명령 섹션에서는 추가로 지정해야 합니다.--password-stdin aws_account_id.dkr.ecr.region.amazonaws.comus-west-2baws ecr get-login-password --region region

도움이 되었기를 바랍니다!

관련 정보