Django 서버 AWS EC2에 올리기

KDOY·2022년 1월 27일
0
post-thumbnail

Django로 프로젝트를 생성하여 서버를 만들었다.
그러나 서버를 유지시키려면 컴퓨터를 항상 켜놔야 한다는 단점이 있는데 이를 해결해주는 것이 AWS다.

AWS EC2에서 os가 ubuntu인 인스턴스를 생성하였다.

생성하는 것까지는 좋았는데 그럼 저 컴퓨터로 어떻게 들어갈까?
바로 Putty 프로그램을 이용하면 된다.

Putty 프로그램을 실행하면 위와 같은 창이 뜨는데 Host Name칸에 AWS EC2에서 생성한 인스턴스 즉 컴퓨터 ip를 입력하면 된다.

혹시 SSH로 키를 받았다면 SSH>Auth에 들어가면 Private key를 넣는 칸이 있는데 거기에 넣어주면 된다.

접속을 하였다면 AWS에서 받은 컴퓨터 터미널에 접속이 되어있을 것이다.

자 그럼 장고에서 만든 서버를 이 컴퓨터에 옮겨주면 되는데 이땐 Git을 이용하면 된다.

github에 장고 프로젝트를 올렸다 가정하고 진행을 한다면
AWS 컴퓨터 터미널에서 프로젝트 파일하나 생성해 준 뒤 그 파일로 들어간다.

mkdir [파일명] #파일 생성
cd [파일명] #해당 파일로 이동

이후에 git으로 github에 올린 프로젝트를 받아오면 된다.

git init
git remote add origin [깃 주소]
git pull origin master

서버를 실행시키기 전에 가상머신을 생성해줘야 하는데 다시 설치해줘야한다.

sudo apt update
sudo apt install python3
sudo apt install python3-pip
sudo apt install virtualenv
pip install virtualenv

virtualenv venv --python=python3

venv폴더가 생성되고 그 안에 가상환경이 만들어져 있다.

source venv/bin/activate

를 입력하면 앞에 (venv)~~~$ 로 가상환경이 켜진 것을 확인할 수 있다.

이젠 로컬에서 받았던 패키지들을 여기서도 다시 설치를 해줘야한다.

이때 로컬에서 다음과 같은 명령어를 쳐준다.

pip freeze > requirements.txt

pip freeze는 설치된 패키지 목록을 보여주며 이를 requirements.txt를 만들어 저장하겠다는 뜻이다.

그러면 requirements.txt 안에는 패키지 목록들이 들어가 있고 이를 git에 다시 올려 AWS 컴퓨터에서 다시 받고

pip install -r requirements.txt

를 쳐주면 requirements.txt 내부에 있는 패키치들을 한번에 설치하여 준다.

이제 모든 준비가 끝났고 로컬과 같이 migrate해주고 runserver를 해주면
AWS 컴퓨터에서 장고 서버가 돌아간다.

profile
공부한 것을 스스로 되짚어 보기 위한 블로그

0개의 댓글