본문 바로가기

DevOps/Docker

[Docker 기본] AWS ECR(Elastic Container Registry) 사용해보기

AWS ECR 사용해보기


1. 컴퓨터에 아래 명령어를 실행시켜서 aws cli를 설치한다. 

brew install awscli
aws --version

 

2. EC2 ubuntu 에 아래 명령어를 입력해서 설치

$ sudo apt install unzip
$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
$ unzip awscliv2.zip
$ sudo ./aws/install
$ aws --version # 잘 출력된다면 정상 설치된 상태

 

 

정상적으로 설치되었다.

 

3. AWS 를 새 페이지에서 접속해서, IAM 을 검색한다.

=> ECR에 접근하기 위한 권한을 얻기위해 만드는 것

 

4. IAM > 사용자

 

 

사용자 생성> 이름을 입력하자. 나는 my-computer로 입력했다. 

 

5. 다음 버튼을 클릭하고 직접 정책 연결을 선택한다 

=> container를 검색해서 RegistryFullAccess를 선택한 후 다음을 누른다. 

=> 사용자 생성 클릭

 

 

6. 사용자 클릭

 

 

7. 액세스 키를 만든다. 

AWS 외부에서 실행되는 애플리케이션 선택 후 다음

 

 

7. 액세스 키, 비밀 액세스 키를 확인할 수 있다. 

터미널에 aws configure이라고 입력한다. 

위에서 확인한 키를 입력한다. 

 

Default region name 에는 ap-northeast-2를 입력해준다. 나머지는 엔터를 눌러주자. 

 

8. EC2에서도 동일하게 설정해야한다. 

aws configure를 입력하고 키와 리전을 입력해주면된다. 

 

9. 이번에는 ECR을 만들 차례이다. 

AWS 에서 container registry를 검색해보자. 

 

10. 레포지토리 생성버튼을 클릭한다. 아래와 같이 설정해주자. 

* 하나의 레파지토리에는 하나의 이미지를 생성한다. 

레파지토리 생성을 눌러준다. 

 

이미지를 저장하고 다운받아보자.


1. VS code에서 Dockerfile 생성

FROM openjdk:17-jdk

ENTRYPOINT [ "/bin/bash", "-c", "sleep 500" ]

 

2. ECR 레포지토리에 들어가보면 푸시 명령보기 버튼이 있다. 

네 개의 명령어가 있다. vscode 터미널에 순서대로 입력해보자. 

 

 

이미지가 생성되었다. 

 

3. vscode 로 가서 이미지를 삭제한다 .

docker rm -f 'id'

 

 

4. 이미지를 다운받아보자. ECR에서 레포지토리를 클릭하면 URI가 있다. 

docker pull 'url'

이미지가 다운받아졌다. 

 

 

 

* Inflearn(인프런) ‘비전공자도 이해할 수 있는 Docker 입문/실전’ 강의 참고