🍺 들어가며...
오늘은 AWS의 ECR에 대해 간단한 설명과 활용법에 대한 설명을 하려고 합니다.
먼저 AWS ECR은 쉽게 말해서 이미지를 저장하는 저장소 입니다.
이미지를 매번 할 때마다 만드는 것이 아니라, 생성한 이미지를 ECR(저장소)에 두고, 필요할 때마다 꺼내서 쓰는 것입니다.
🍻 이미지 ECR에 저장하기
(ECR은 이전에 경험했던 서비스들에 비해서 비용이 조금 많이 나갑니다. 참고해서 실습해주세요)
글을 보시고 따라오시면 충분히 해당 서비스를 사용해 보실 수 있을 것입니다.
1. EC2를 생성하고 Putty로 접속
- SSH 접속 후에 docker를 다운 받고, 앞서 다루었던 내용처럼 docker 파일을 생성하고, 권한까지 부여하시면 됩니다.
(원하는 docker 파일은 검색을 통해 작성하시기 바랍니다.)
2. 이미지 생성
- 1단계에서 생성한 docker 파일에 알맞은 이미지를 생성하시면 됩니다.
3. ECR 저장소 생성
- 위의 단계들은 기존에 다루었던 과정과 동일한 과정이였다면 여기서는 저장소를 생성해주어야합니다.
- 참고로, ECR 은 ECS -> 리포지토리 로 가셔야 사용 가능합니다.
4. 원격 접속한 EC2에서 리포지토리에 이미지 태그 지정
- 이미지 태그를 제가 이해한 느낌은 git에 커밋할 때 사용하는 커밋 메시지(?) 느낌이였습니다. 무슨 말인지는 과정을 진행하다보면 느끼실 것입니다.
- 아래의 코드를 입력해서 태그를 지정할 수 있습니다.
docker tag 생성한_이미지_이름(번호) 생성한_ECR_URL
5. EC2에서 ECR 접속하기
- 아래의 명령어를 입력해서 ECR에 접속할 수 있는데, 아마 권한 관련 문제가 발생할 것입니다. 해당 문제는 IAM으로 해결하셔야됩니다.
aws ecr get-login --no-include-email --region 등록 지역
6. IAM
- 현재 사용하고 있는 계정에 대해 인증하는 역할을 합니다.
- IAM -> 사용자 에서 생성해줍니다.
- 역할을 실습을 진행하기 위해 모든 일을 다할 수 있는 권한을 부여하겠습니다.
- 생성된 엡세스 키 ID와 비밀 엑세서 키를 순서대로 붙여넣기 해서 인증할 수 있습니다.
7. 태그로 지정한 이미지를 ECR에 넣어주기
- 아래의 명령어로 git의 push 처럼 저장소에 넣어줄 수 있습니다.
(저장소 URL 만으로 바로 이전에 태그로 만든 이미지를 넣어줍니다.)
docker push 리포지토리 url
조금 복잡해보이지 차근차근 따라오시면 총 7단계에 거쳐서 이미지를 ECR에 저장하실 수 있습니다. ^^