AWS Elastic Beanstalk + Django 배포

may_soouu·2021년 6월 6일
1
post-thumbnail

1. AWS IAM 생성

1) aws > iam > 엑세스 관리 > 사용자 > 사용자 추가
2) 사용자 이름 입력 / 프로그래밍 방식 엑세스 클릭
3) 기존 정책 직접연결

AmazonEC2FullAccess
AmazonS3FullAccess
AmazonESFullAccess

4) 다음 > 사용자 만들기 > csv 파일 다운받

2. EB CLI 설치

$ brew install awsebcli

pip 으로 설치해도 되는데, 나는 pip 으로 설치했을 때 잘 안됐다.
brew 로 설치하면 따로 환경변수 설정을 안해줘도 된다.

# 설치 확인
$ eb --version

3. django 프로젝트 만들기

# 프로젝트 폴더에서 가상환경 끈 상태로 진행!! 
$ eb init 

리전 선택하기. 나의 경우 서울 10번 선택

1 에서 만든 aws id pw 입력하기 

애플리케이션 이름 입력하기

4. requirements.txt 만들기

$ pip freeze > requirements.txt

5. .ebextensions 설정

manage.py 파일 있는 경로에서

$ mkdir .ebextensions
$ cd .ebextensions

위 파일 경로에서 아래 파일 추가 및 내용 추가

$ vi django.config

아래 내용 추가! 

option_settings:
aws:elasticbeanstalk:container:python:
WSGIPath: test_project/wsgi.py
    
test_project 이 부분은 본인 프로젝트 넣기
나같은 경우 처음에 두번째줄이랑 세번째줄을 들여쓰기 했더니 계속 json 에러가 났다


:wq 로 파일 저장 및 나오기

6. eb-create 로 환경 생성하기

$ eb-create 만들려는 환경 이름

safe to Ctrl+C 가 중간중간 나오는데 누르지 말고 다 설치 될 때까지 기다리기
설치가 완료되면 터미널 화면 마지막에

Successfully launched environment: 환경이름

위와 같이 들 것이다.

7. eb-status

$ eb-status 

위 명령어로 도메인 명 확인
CNAME 부분에 있다.

해당 부분을 복사 후
프로젝트 파일 > settings.py 에 
ALLOWED_HOSTS = ['이 안에 넣어준다.']

8. 배포

$ eb deploy 로 배포하기

9. 배포 확인

$ eb open 

출처
출처1
출처2

profile
back-end 개발자

0개의 댓글