본문 바로가기

내일 배움 캠프/TIL

TIL) 1주차 5일차

http://nbcamplol.shop/

오늘 드디어 미니 프로젝트가 끝났다! 

기존에 수강 했던 "웹 개발 종합반"에서는 'templates'와 'app.py'만을 이용 했기에 수월하게 배포를 했었지만

이번 미니 프로젝트를 진행하면서  website라는 폴더를 새로 만들면서 그안에 '__init__.py, models.py, views.py, static, templates' 등 여러 파일을 만들게 되면서 배포하는 방식도 달라졌다.

 

<순서>

1. AWS - EC2 서버 구매하기 (1년동안 무료 - 23년 3월 16일 구매완료)

2. AWS - EC2 접속하기

   git bash를 실행 시킨후, 아래 입력

ssh -i 받은키페어를끌어다놓기 ubuntu@AWS에적힌내아이피

 키페어란,          

키페어(현재 문서 폴더 안에 있음)

 

  AWS에적힌내아이피란,

 ★★★ 퍼블릭 주소는 인스턴스를 종료하면 바뀌기 때문에 다음에 다시 사용할때 주소를 확인 해주어야 한다.

 

3. FileZilla 실행 후 다음과 같이 설정

 

4. 서버 환경 세팅 (한번 하면 세팅 할 필요 없음!)

  • sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10 (python3 명령어를 python으로 사용할 수 있게 하는 명령어)
  • sudo apt-get update                           
  • sudo apt-get install -y python3-pip  (pip3 설치)
  • sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1 (pip3 대신 pip으로 입력하기 위한 명령어)
  • sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 5000 (80포트로 들어오는 요청을 5000포트로 넘겨주는 명령어)
  • pip install flask (서버 구축을 위한 flask 패키지 설치)
  • pip install pymongo dnspython

5. main.py의 app.run() 설정  ★★★★★★★★★★★★★★★★★ (이거때문에 2시간을 고민했다...)

  • app.run('0.0.0.0', port=5000, debug=True) 으로 설정 하면 됨

6. nohup 설정

  • git bash을 종료 하더라도 서버가 계속 돌아가게 하기 : nohup python 파일.py &
  • 서버 종료하기 :  ps -ef | grep 'python 파일.py' | awk '{print $2}' | xargs kill

 

그래서 오늘 뭘 배웠나 )

  • main.py의 app.run() 설정해야 하는 이유
  • 배포하기

끝내며,

배포는 끝냈지만 여전히 이번에 만든 웹사이트를 온전히 내손으로 직접 만들지는 못한다.

백엔드 부분이 너무 부족하기때문이다...

그래서 목표가 생겼다. 1주차가 다 지나기 전에 최대한 내 손으로 직접 만들어보자!  

 

참고) https://teamsparta.notion.site/5-18b62b60cc7d4343a5917dc8b7121977#0da03343563b4d96b56ee92e4987cac1

'내일 배움 캠프 > TIL' 카테고리의 다른 글

TIL) 2주차 4일  (0) 2023.03.23
TIL) 2주차 3일  (1) 2023.03.22
TIL) 2주차 2일  (0) 2023.03.21
TIL) 2주차 1일  (0) 2023.03.20
1주차 3일  (0) 2023.03.15