우선 AWS 어려운 줄 알았는데 별거 아니다!!!! 다들 언넝 해보시길
우선 회원가입하고 로그인 진행해준다.
AWS 홈화면으로 들어가게 되면 다들 이 화면이 뜰지 모르겠지만 우선 EC2를 찾아 인스턴스 생성해주면 된다!
그러게 되면 다음과 같은 과정들이 있는데 차례대로 진행해보자.
원하는 이름으로 적어주면 된다.
나는 ubuntu 환경으로 진행하고 싶어 선택했다. 필요한 환경이 있다면 그거에 맞게 설정해주면 된다.
처음 가입을 진행하면 1년동안 무료로 이용할 수 있는 프리 티어?? 라고 있다! 나는 그걸로 설정했고, 만약 더 높은 사양을 필요로 한다면 각자 니즈에 맞춰 설정하면 된다. 하지만 난 거지기때문에 프리티어로..ㅎㅎ
보통 처음 인스턴스 설정하는 사람이라면 키 페어는 없을 것이다. 그렇다면 옆에 새 키 페어 생성
눌러서 생성해주면 되고, 가지고 있다면 있는거 사용해주면 된다.
근데 여기서 새로 키 페어를 생성하게 되면 원하는 방식에 맞게 키 발급을 하게 되는데,
이 때 발급받은 키는 잘 보관하고 있어야 됨!!!
나는 다음과 같이 설정했다.
나는 기본으로 유지하고 넘어갔다.
이거는 따로 만지지 않았다. 여기까지 진행했으면 인스턴스 시작을 눌러주면 새로운 인스턴스가 생성된다!!!
일단 우선 다음과 같은 화면에 들어가보자.
그렇다면 처음 인스턴스를 만들었다면 실행중인 인스턴스가 1개 존재할 것이다. 인스턴스(실행중)
을 눌러주면 된다.
외부에서 IP를 입력해 사용할 수 있게끔 하기 위해서는 다음과 같은 과정이 필요하다.
다음과 같이 왼쪽 배너에 탄력적 IP를 선택해주면 다음과 같은 화면이 뜬다.
나는 지금 2개의 IP주소를 가지고 있지만 처음 만들게 된다면 아직 하나도 없을 것이다.
그렇다면 오른쪽 상단에 탄력적 IP 주소 할당을 눌러주면 된다!
여기서는 따로 설정할 거 없이 그냥 할당 눌러주면 끝난다.
위와 같이 할당을 하게 되면 아래와 같이 새롭게 하나가 만들어진 것을 볼 수 있다.
그렇다면 오른쪽 상단에 작업 -> 탄력적 IP 주소 연결
을 눌러준다.
그렇다면 내가 아까 만들어둔 인스턴스를 선택해주고 프라이빗 IP 주소도 해당하는 걸로 선택해주면 된다.
여기까지 진행했으면 IP 주소 설정해주는 것은 거의 끝났다!
여기까지 진행했으면 거의 다 한거다. 쫌만 힘내보자
IP 주소를 새롭게 열어줬으니 그에 맞는 포트까지 열어줘야 IP 주소 설정은 끝이 난다!
왼쪽에 네트워크 및 보안 - 보안 그룹
을 눌러주면 다음과 같은 화면이 뜰거다.
그중에 아래에 집중해보면, 인바운드 규칙을 새롭게 생성해 줄거다. 인바운드 규칙 편집
을 눌러봐보자.
그러면 새롭게 규칙 추가를 다음과 같이 추가해주면 된다.
유형: 사용자 지정 TCP
포트 범위: 원하는 포트 번호로 설정
소스: 사용자 지정
그 옆: 0.0.0.0/0
일단 서버를 다양한 루트로 실행시킬 수 있는데
해당하는 인스턴스를 켜려면 아래와 같이 연결을 눌러주면 된다.
그러면 크게 나는 Window 유저라서 putty를 설치해 SSH로 연결하는 방법과 그냥 EC2 인스턴스 연결 이렇게 크게 2가지가 있다.
- putty로 아까 키 페어 설정한 파일과 IP 주소 입력해 이용하는 방법
- EC2 인스턴스 연결
일단 2번 방법대로 해보자. 그냥 바로 연결을 눌러 진행하면 된다.
서버를 오픈하기 위해서는 작성한 코드가 있어야 하는데, 이 환경에서 작성한 코드가 있다면 그걸로 사용하면 되고 보통은 github에 저장해놓고 clone 하는 형식으로 가져온다. 나도 그랬다.
깃에 저장하고 클론하는 법은 알거라 생각하고 호딱 진행해서 서버에 코드 저장시키면 된다 !
로컬에서 작업하다 가져온 코드라면 환경이 다를 수 있다. 서버 환경에 맞게 알맞게 적용해주면 된다.
Django는 외부와의 포트와 연결을 하기 위해서는 project의 settings.py에서 다음과 같이 설정해주자.
📃 settings.py
ALLOWED_HOSTS = []
👇👇
ALLOWED_HOSTS = ['*']
그렇다면 이제 다 끝났다. 인스턴스에 연결한 탄력적 IP 주소 즉, 퍼블릭 IP 주소와 포트 번호를 입력하면 바로 접속 가능하다.
python manage.py runserver [public IP 주소]:[Port번호]
끝!
참고자료 📩