AWS ECR에 이미지 푸쉬하기

4riend·2024년 4월 16일

CodeMind 프로젝트

목록 보기
13/20
post-thumbnail

docker hub를 사용해도 좋지만 AWS로 모든 환경을 구성하고 싶었다.
AWS에도 이미지 저장소 역할을 하는 ECR이 있었고 사용한 과정을 공유한다 🔥🔥🔥


시작

난 EKS 클러스터를 편하게 관리하기 위해 배스천 서버를 운영중이었다.
이곳에서 클러스터에 pod를 띄우기 위해선 image가 필요했는데 이는 image 저장소에서 가져오면 된다.

이전에 docker hub를 사용했었는데 AWS에는 ECR이 존재했기에 이를 이용해보았다.
배스천 서버에서 ECR에 이미지 푸쉬를 하기 위해선 docker 설치가 필수인데 리소스가 부족했다😢

어쩔 수 없이 로컬에서 이미지 푸쉬를 진행했다👍


WSL에서 ECR에 이미지 푸쉬하기

  1. 설치되어 있지 않은 aws cli 설치
apt install awscli
  1. 도커는 이미 설치되어 있었기에 도커 바로 실행
sudo systemctl start docker
  1. AWS ECR 레포지토리 생성

그럼 위와 같이 URI를 얻을 수 있다.

  1. 해당 ECR 레포지토리에 로그인(?)하기
aws ecr get-login-password --region ap-northeast-2 | docker login --username AWS --password-stdin 211125418324.dkr.ecr.ap-northeast-2.amazonaws.com/webservice

aws ecr get-login-password --region ap-northeast-2 : AWS CLI를 사용하여 ECR 로그인 패스워드(토큰) 얻기

docker login --username AWS --password-stdin : 얻은 로그인 패스워드(토큰)를 사용하여 Docker 클라이언트를 ECR 리포지토리에 로그인

  1. 이미지 빌드 -> 이미지 태그 지정 -> 레포지토리에 푸쉬
docker build -t webservice .
docker tag webservice:latest 211125418324.dkr.ecr.ap-northeast-2.amazonaws.com/webservice:latest
docker push 211125418324.dkr.ecr.ap-northeast-2.amazonaws.com/webservice:latest

푸쉬된 이미지를 확인할 수 있다 🔥

profile
날씨의 아이, 진격의 거인, 로스트 아크, Java Spring

0개의 댓글