본문 바로가기

DevOps/AWS

[AWS] EC2 docker를 이용한 Django, Nginx 배포

 

ec2는 aws linux 모델을 사용하였고(yum), django와 nginx같은 경우는 이미 깃허브에 docker-compose파일로 만들어둔 상태이다. 

프로젝트를 확인하고 싶으면..
https://github.com/3rd-wanted-pre-onboarding-team-F/04_IdeaConcert_Backend/tree/feature/SM로 들어가서
prod/SM 브랜치를 확인해보면 docker-compose 파일과 conf 파일을 확인할 수 있다.

 

 

1. yum프로그램 최신 버전으로 업데이트

# yum 업데이트
sudo yum update -y
sudo yum upgrade -y

 

2. ec2 환경에 docker 설치

# 도커 설치
sudo amazon-linux-extras install docker

# 도커 시작
sudo service docker start

# 도커를 sudo 없이 사용가능 하도록 권한 부여 (부여 후 재시작이 필요함 reboot 할거임)
sudo usermod -a -G docker ec2-user
(sudo usermod -aG docker ${USER} 도 가능)

# auto-start에 docker 등록
sudo chkconfig docker on

# 인스턴스 재시작
sudo reboot


# 도커 컴포즈 설치
sudo curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compos

# 권한 부여
sudo chmod +x /usr/local/bin/docker-compose
docker가 제대로 설치되었는지 확인하려면 docker -v 라는 명령어를 입력하면 된다.(docker -V)

최신 AMI2에서는 이제 yum install docker를 통해 docker를 설치할 수 있다. 하지만 이전의 버전에는 yum install docker를 통해서 설치할 수가 없다.

설치가 안된다면  yum install docker 명령어를 입력해보자.

여기까지가 ec2에서 도커를 설치하는 방법이다.
이제는 깃허브 레포지토리에 저장된 프로젝트를 clone 할 것이다.

 

3. 배포

# 폴더 생성 후 이동
sudo mkdir /python
sudo mkdir /python/project
cd /python/project/

# git 설치
sudo git init

# 프로젝트 가져오기
sudo git remote add origin https://github.com/3rd-wanted-pre-onboarding-team-F/04_IdeaConcert_Backend.git
sudo git pull origin prod/SM

# env 파일을 생성해서 스페셜 키 입력
sudo vim .env

# 도커 컴포즈 실행
docker-compose up -d

# 도커가 잘 실행되는지 확인하는 명령어
docker ps -a

 

 

 

 

 

 

 

 

! 참고

https://dawitblog.tistory.com/172