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
! 참고