3. Django 환경 설정
3.1. Python3, pip, venv 설치
- EC2 서버에 접속한 후, Django 프로젝트를 실행하기 위해 Python3, pip 및 venv(가상환경)을 설치한다.
sudo apt update
sudo apt install python3-pip python3-venv -y
3.2. 가상 환경 설정 및 활성화
- Django 프로젝트를 위한 가상 환경을 생성하고 활성화한다.
python3 -m venv myenv
source myenv/bin/activate
3.3. Django 프로젝트 클론
- Git을 사용해 로컬에서 개발한 Django 프로젝트를 EC2 서버로 클론한다.
git clone <your-repository-url>
cd <your-project-folder>
3.4. 필수 패키지 설치
requirements.txt 파일이 있는 경우, 해당 파일을 사용해 필요한 Python 패키지를 설치한다.
pip install -r requirements.txt
3.5. 데이터베이스 설정 및 마이그레이션
- 데이터베이스 설정을 확인하고, Django 프로젝트에서 마이그레이션 명령어를 실행해 데이터베이스를 준비한다.
python manage.py migrate
3.6. 정적 파일 수집
- Django 프로젝트에서 사용되는 정적 파일을 수집하여 서버에 저장한다.
python manage.py collectstatic
4. Gunicorn 및 Nginx 설정
4.1. Gunicorn 설치 및 실행
- Django 애플리케이션을 배포하기 위해 Gunicorn을 설치하고 실행한다.
pip install gunicorn
gunicorn --bind 0.0.0.0:8000 <your_project_name>.wsgi:application
4.2. Nginx 설치 및 설정
sudo apt install nginx -y
4.3. Nginx 설정 파일 구성
- Nginx 설정 파일을 수정하여 Gunicorn과 연동한다. 다음 설정을
/etc/nginx/sites-available/에 추가하고, <your-ec2-public-ip>을 EC2의 Public IP로 대체한다.
server {
listen 80;
server_name <your-ec2-public-ip>;
location / {
proxy_pass http://127.0.0.1:8000;
}
location /static/ {
alias /home/ubuntu/<your_project_folder>/static/;
}
location /media/ {
alias /home/ubuntu/<your_project_folder>/media/;
}
}
4.4. Nginx 설정 활성화 및 서버 재시작
- Nginx 설정을 활성화하고, 서버를 재시작하여 변경 사항을 적용한다.
sudo ln -s /etc/nginx/sites-available/django_project /etc/nginx/sites-enabled
sudo systemctl restart nginx