본문 바로가기
AWS/Part 2. Ch03 중규모 아키텍트

CH03_07 AWS ECR에 컨테이너 업로드

by Engineer-Lee 2022. 4. 28.
반응형

 

 

먼저 ec2인스턴스를 만든다. 이름은 docker-ECR 로 설정했다.

 

putty로 접속해서 도커를 다운로드 받자

curl -fsSL https://get.docker.com/ | sudo sh 명령어를 입력한다.

그리고 sudo usermod -aG docker $USER로 도커의 권한을 등록한다.

 

mkdir docker-server로 도커 서버폴더를 만들고 cd docker-server로 들어가서

git clone https://github.com/chlghgus10/fastcampus_test.git 으로 프로젝트를 다운받는다.

그리고

cd fascampus_test

cd fascampus 로 폴더 안에 들어가서

vi Dockerfile로 파일를 만든다.

파일 안에는 아래 내용은 입력한다.

 

FROM python:3.6.7
ENV PYTHONUNBUFFERED 1
RUN apt-get -y update
RUN apt-get -y install vim
RUN mkdir /srv/docker-server
ADD . /srv/docker-server
WORKDIR /srv/docker-server
RUN pip install --upgrade pip
RUN pip install -r requirements.txt
EXPOSE 8000
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]

 

그리고 putty를 껐다가 다시 킨다.

이제 도커 이미지를 생성해보자

docker build -t ecr/django . 명령어를 입력한다.

 

 

다시 aws로 넘어와서 ecs를 검색하면 ECR 리포지토리가 나온다. 클릭하자

 

그리고 프라이빗 리포지토리를 생성한다.

이름은 아래와 같고 기본 설정 그대로를 따른다.

잘 생성됐다. URI를 복사해놓자

 

docker images 명령어로 ecr/django의 이미지ID를 알아낸다.

 

그리고 docker tag [이미지 ID] [AWS ECR URI] 명령어를 입력한다.

 

 

이제 aws cli 명령어를 사용하기 위해 sudo apt install awscli 를 입력한다.

aws configure 명령어로 aws 인증을 해야하는데 우리는 현재 AWS Access Key ID를 모른다.

aws IAM의 사용자로 가서 사용자 추가를 하자

 

AdministratorAccess에만 체크를 하였다.

이제 액세스 키 ID값과 비밀 액세스키 값을 얻었다. 복사해서 붙여넣자

 

 

 

 

그후 aws ecr get-login --no-include-email --region ap-northeast-2 명령어를 입력하면 긴 명령어가 나오는데 그대로 복붙한다.

 

 

이제 도커 푸쉬를 해보자

docker push [AWS ECR URI] 

 

그럼 ECR 리포지토리안에 이미지가 생성된걸 볼 수 있다.

 

ecr 서비스는 비용이 비싸니 실습이 끝나면 꼭 삭제해주자

반응형

'AWS > Part 2. Ch03 중규모 아키텍트' 카테고리의 다른 글

CH03_09 AWS CLI 개요  (0) 2022.04.29
CH03_08 AWS Fargate을 통한 배포  (0) 2022.04.28
CH03_06 Docker-Compose를 활용한 배포  (0) 2022.04.28
CH03_05 Nginx Docker Build  (0) 2022.04.27
CH03_04 Django Docker Build  (0) 2022.04.27