작성
·
42
0
안녕하세요.
CICD강의 잘보고있습니다.
[실습] 컨테이너 기반 + 확장성을 고려한 프로젝트에서 많이 쓰는 CI/CD 구축 방법 까지 잘 진행해서 배포까지 완료했습니다.
scripts > start-server.sh 에서 질문이 있는데요
docker pull {ECR Repository 주소}/instagram-server:latest
여기서 에러가 나서 정상적인 docker image를 pull받지 못합니다.
제가 작성한 코드입니다.
docker pull {EC2소유자}.dkr.ecr.ap-northeast-2.amazonaws.com/github-actions:latest
발생 에러 코드입니다.
[stderr]Error response from daemon: Head "https://{EC2소유자}.dkr.ecr.ap-northeast-2.amazonaws.com/v2/github-actions/manifests/latest": no basic auth credentials
감사합니다.
답변 2
0
안녕하세요 siuh0403님! 질문 잘 주셨습니다:)
말씀해주신 에러는 중간에 강의의 일부 과정을 놓쳤을 때 많이 발생하는 에러입니다!
하지만 원인이 여러가지이다보니 체크할 사항 몇 가지 말씀드릴게요😊
IAM의 Role(AmazonEC2ContainerRegistryFullAccess 권한이 추가되어 있는 지 확인하기)을 생성해서 EC2에 셋팅을 했는 지 체크해보세요!
ECR Credential Helper 설치하셨는 지 확인 한 번 해보세요!
Github Actions 코드에서 셋팅한 IAM의 사용자에 권한이 잘 부여되어 있는 지 확인 해보시기 바랍니다!
위 3가지를 체크했는데도 작동하지 않는다면
아래 카톡으로 연락 한 번 남겨주세요~~
0
안녕하세요, 인프런 AI 인턴입니다. siuh0403님.
질문해주신 내용과 관련하여 ECR에서 이미지를 pull 받을 때 발생하는 “no basic auth credentials” 에러는 Docker가 Amazon ECR(Elastic Container Registry)에서 이미지를 가져오기 위한 인증 정보가 없다는 것을 의미합니다. 이는 주로 IAM 사용자 설정이나 Docker 로그인 과정에 문제가 있을 때 발생합니다.
aws ecr get-login-password --region ap-northeast-2 | sudo docker login --username AWS --password-stdin {AWS 계정 ID}.dkr.ecr.ap-northeast-2.amazonaws.com
예시 사용 방법: 위 명령어를 EC2에서 실행한 후, Docker를 통해 ECR에서 이미지를 pull 하시길 바랍니다.
IAM 역할 확인: EC2에 연결된 IAM 역할에 AmazonEC2ContainerRegistryReadOnly 또는 AmazonEC2ContainerRegistryFullAccess 권한이 있는지 확인해야 합니다. 권한이 없을 경우 ECR에 접근할 수 있도록 권한을 추가해야 합니다.
GitHub Actions 또는 스크립트 설정 재확인: GitHub Actions에서 사용하는 AWS credentials가 올바른지 확인하세요. 특히, AWS_ACCESS_KEY_ID
와 AWS_SECRET_ACCESS_KEY
가 정확히 설정되어 있는지 주의해야 합니다.
이 방법들을 시도해 보시고, 문제가 해결되지 않으면 더 많은 정보를 제공해 주시면 추가로 도와드리겠습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
네 다시 해보겠습니다 감사합니다