✅ AWS CLI 설치
[맥(Mac OS)]
$ brew install awscli
$ aws --version # 잘 출력된다면 정상 설치된 상태
[윈도우(Windows)]
- 이 링크(https://awscli.amazonaws.com/AWSCLIV2.msi)를 다운받아 설치하기
- cmd를 실행시켜서 아래 명령어 입력해보기
$ aws --version # 잘 출력된다면 정상 설치된 상태
[우분투(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 # 잘 출력된다면 정상 설치된 상태
✅ IAM 생성하기
- IAM에서 사용자 생성하기
- Access Key 발급받기
- AWS CLI로 액세스 키 등록하기
$ aws configure
AWS Access Key ID [None]: <위에서 발급한 Key id>
AWS Secret Access Key [None]: <위에서 발급한 Secret Access Key>
Default region name [None]: ap-northeast-2
Default output format [None]:
✅ AWS ECR(Elastic Container Registry) 셋팅하기
Docker 이미지를 저장할 수 있는 저장소를 만들어보자.
- 일반적으로 하나의 리포지토리에는 한 종류의 이미지만 저장하고 관리한다.
✅ 이미지 빌드해서 AWS ECR에 Push, Pull 해보기
- Dockerfile 작성하기
FROM openjdk:17-jdk
ENTRYPOINT ["/bin/bash", "-c", "sleep 500"]
- 이미지 빌드 및 push 하기
이미지 Push할 때 어떤 명령어를 써야 하는 지 가르쳐주는 위치
AWS ECR에 들어가서 ‘푸시 명령 보기’ 버튼을 누르면, 어떻게 이미지를 Push하면 되는 지 친절하게 설명이 나와있다.
$ aws ecr get-login-password --region ap-northeast-2 | docker login --username AWS --password-stdin 002177417362.dkr.ecr.ap-northeast-2.amazonaws.com
$ docker build -t instagram-server .
$ docker tag instagram-server:latest 002177417362.dkr.ecr.ap-northeast-2.amazonaws.com/instagram-server:latest
$ docker push 002177417362.dkr.ecr.ap-northeast-2.amazonaws.com/instagram-server:latest
- 이미지 Pull 받아보기
$ docker image rm -f [Container ID] # 기존 갖고있던 이미지 지우기
$ docker pull 002177417362.dkr.ecr.ap-northeast-2.amazonaws.com/instagram-server
$ docker image ls
002177417362.dkr.ecr.ap-northeast-2.amazonaws.com/instagram-server : 이 값 자체가 이미지 이름이다. 길어서 어색해보일 뿐이다.