FastAPI 프로젝트 배포:ECR repository 업로드

지진우·2023년 12월 13일
0

1. Introduction

이전 포스팅에선 docker를 통해 이미지를 빌드했습니다. 이번에는 Docker hub와 같은 컨테이너 임지에 대한 레지스트리인 AWS ECR(Elastic Container Registry)에 컨테이너를 업로드하는 과정을 살펴보겠습니다.

2. IAM 사용자 생성

컨테이너 이미지를 ECR 저장소에 게시하기 위해선 먼저 IAM(Identity and Access Management)에서 사용자를 생성해야합니다.

AWS IAM 에 접속해서 "액세스관리"의 사용자를 눌러 사용자 생성을 해줍니다.

사용자 이름을 입력하고 다음을 눌러 "직접 정책 연결"을 선택한 후 다음과 같이AmazonEC2ContainerRegistryFullAccessAmazonECS_FullAccess 정책을 추가합니다

이후 생성을 눌러 사용자를 생성하고 생성된 사용자를 클릭해 "보안 자격 증명"을 클릭합니다. 아래의 액세스 키 생성을 눌러 "Command Line Interface(CLI)"로 액세스 키를 생성합니다.

생성된 액세스 키는 CSV 파일로 다운하거나 자신의 프라이빗 저장소에 저장합니다.

ECR repository 생성

Amazon ECR로 접속해 리포지토리 생성을 클릭합니다.

다음과 같이 리포지토리의 이름을 정해 리포지토리를 생성합니다.

생성한 리포지토리에 들어와 "푸시 명령 보기"를 클릭하면 명령어들이 제시되는 것을 볼 수 있습니다.

4. 도커 이미지 ECR repository에 업로드

액세스 키의 접근 방식을 Command Line Interface(CLI)로 생성했기 때문에 aws-cli 설치를 필요로 합니다. AWS-CLI 해당 페이지에서 aws-cli를 다운로드 후 설정을 진행합니다.

터미널에서 아래의 설정해줍니다.

$ aws configure

-> AWS Access Key ID [None]: <Acess Key id>
-> AWS Secret Access Key [None]: <Secret Access Key>
-> Default region name [None]: <Your region name>
-> Default output format [None]:

이후 위에서 제시된 푸시 명령들을 순서대로 하나씩 진행합니다.(도커가 실행되고 있는 상태여야합니다.)

마지막 명령어를 입력하면 ECR repository에 업로드가 끝났다면 새로고침을 버튼을 눌러 업로드된 이미지를 확인합니다.

profile
높이보다는 멀리, 넓게보다는 깊게

0개의 댓글