[AWS] EC2 RDS 연동 - gunicorn 배포

가비·2020년 10월 26일
0

[AWS]

목록 보기
4/4

EC2 서버

# pem 파일이 있는 디렉토리에서 ssh 서버 접속
ssh -i pem파일명.pem ubuntu@Public IP 주소

# linux - miniconda 설치
wget miniconda설치스크립트

# 실행권한 설정
chmod +x minicondafile

# miniconda 실행하여 설치 - 모두 YES
./minicondafile

source .bashrc

# 패키지 업데이트 & 업그레이드
sudo apt-get update
sudo apt-get upgrade

# GCC 설치 후 mysqlclient를 설치해야 에러가 나지 않음
sudo apt-get install gcc
sudo apt-get install limysqlclient-dev

# 가상환경 생성 및 활성화
conda create -n 가상환경명 python=버전
conda actevate 가상환경명

# 배포 할 깃 레파지토리 클론 후 디렉토리 이동

# requirements.txt에 있는 패키지 목록 설치
pip install -r requirements.txt

RDS database 연동

# settings.py 수정
ALLOWED_HOSTS = ['*', 'Public IP', 'Public IP:8000']

# my_settings.py 수정
DATABASES = {
    'default' : {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'RDS DATABASE명',
        'USER': 'RDS DB접속 계정명',
        'PASSWORD': 'RDS DB접속용 비밀번호',
        'HOST': 'RDS 엔드포인트 주소',
        'PORT': '3306',
    }
}
SECRET = {
        'secret':'settings.py의 SECRET_KEY',
}

gunicorn 배포

# gunicorn 설치
pip install gunicorn

# gunicorn 구동
gunicorn --bind=0.0.0.0:8000 프로젝트명.wsgi

# ssh 세션이 끊어져도 서버를 동작하기 위해 nohup 툴 사용
# & 👉 백그라운드로 동작하는 명령어
nohup gunicorn --bind=0.0.0.0:8000 프로젝트명.wsgi & 

# 실행 및 PID 확인
ps -ef | grep python

# 종료 명령어
kill gunicornPID

0개의 댓글