강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

마음님의 프로필 이미지
마음

작성한 질문수

비전공자도 이해할 수 있는 Docker 입문/실전

[실습] AWS ECR(Elastic Container Registry) 사용해보기

ECR 푸시명령 login 400 Bad Request 에러

작성

·

204

0

안녕하세요! 강의를 따라 학습중인데 ECR를 푸시 명령 1번째 복사해서 붙여넣고 실행하면 다음과 같은 에러 메시지가 발생합니다

Error response from daemon: login attempt to https://(숫자).dkr.ecr.ap-northeast-2.amazonaws.com/v2/ failed with status: 400 Bad Request

 

해당 링크를 접속하면 로그인하라 발생하는데

AWS CLI로 액세스 키 등록도 정상 실행 완료되었는데 무엇이 문제인지 모르겠습니다

답변 3

1

JSCODE 박재성님의 프로필 이미지
JSCODE 박재성
지식공유자

[카톡으로 소통하며 해결한 방법] - 참고용

powershell이 아닌 다른 터미널(git bash 등)을 활용해 명령어를 입력하면 작동한다.

powershell로 ECR에 접근하기 위한 인증을 하려면 아래 링크에 나와있는 명령어를 입력해야 한다.

https://inf.run/dAjau

1

JSCODE 박재성님의 프로필 이미지
JSCODE 박재성
지식공유자

안녕하세요 마음님! 질문 잘 해주셨습니다~~

  1. IAM 권한 확인: AWS CLI에서 사용하는 IAM 사용자가 AmazonEC2ContainerRegistryFullAccess 또는 필요한 권한을 가지고 있는지 확인합니다.

  1. AWS CLI 설정 확인: CLI가 올바르게 설치되었고, 올바른 프로필이 설정되어 있는지 aws configure를 통해 확인하세요. aws_access_key_idaws_secret_access_key가 적절히 설정되어 있는지 체크합니다.

위 2가지 사항 체크한 뒤에도 해결이 안 되신다면

아래 톡방으로 연락 한 번 주실 수 있을까요~??

연락 주실 때 위 2가지 확인한 내용 캡쳐해서 같이 보내주세요!
(혹시 몰라서 더블체크까지 도와드릴게요ㅎㅎ)

https://open.kakao.com/o/srGtpusg

0

안녕하세요, 인프런 AI 인턴입니다. 마음님!

AWS ECR 푸시 명령을 수행하는 과정에서 400 Bad Request 에러가 발생하는 문제는 일반적으로 ECR 로그인 과정에서 발생하는 문제로 인해 발생합니다. 이 문제는 AWS CLI 명령어가 올바르게 구성되지 않았거나, 권한 설정에 문제가 있을 때 나타날 수 있습니다. 다음은 해결할 수 있는 방법들입니다.

해결 방법

  1. AWS CLI로 재로그인: AWS ECR에 로그인해야 하는데, 먼저 AWS CLI로 정확하게 로그인했는지 확인이 필요합니다. 이 과정은 ECR 푸시 명령을 수행하기 전에 필수적입니다. 다음 명령어를 사용해보세요.
   aws ecr get-login-password --region ap-northeast-2 | docker login --username AWS --password-stdin <AWS_ACCOUNT_ID>.dkr.ecr.ap-northeast-2.amazonaws.com

위 명령어에서 <AWS_ACCOUNT_ID>를 실제 계정 아이디로 대체해야 합니다. 이 명령어는 aws ecr get-login-password를 통해 패스워드를 가져와 Docker에 로그인하는 과정입니다.

  1. IAM 권한 확인: AWS CLI에서 사용하는 IAM 사용자가 AmazonEC2ContainerRegistryFullAccess 또는 필요한 권한을 가지고 있는지 확인합니다. ECR에 대한 권한이 부족하면 400 에러가 발생할 수 있습니다.

  2. AWS CLI 설정 확인: CLI가 올바르게 설치되었고, 올바른 프로필이 설정되어 있는지 aws configure를 통해 확인하세요. aws_access_key_idaws_secret_access_key가 적절히 설정되어 있는지, 원하는 프로필을 사용하고 있는지도 체크합니다.

  3. Docker 버전 확인: 사용 중인 Docker의 버전이 최신인지 확인하세요. AWS와 호환성 문제로 인해 발생할 가능성도 있습니다.

관련하여 유사한 문제를 다룬 해결책도 참고해 보십시오:

문제를 해결하는 데에 도움이 되셨기를 바랍니다. 이상으로도 해결이 어려우시면 더 많은 정보를 제공해 주시면 추가로 도와드리겠습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

마음님의 프로필 이미지
마음

작성한 질문수

질문하기