안녕하세요!
AWS 프리티어로 EC2를 이용해서 파이썬 웹 프레임워크 Flask를 실행하는 방법을 소개하겠습니다.
1. AWS
먼저 EC2 서비스 중 우분투 서버 18.04 선택합니다!
그 다음 "프리티어 사용 가능"이라고 표시된 것을 선택합니다
다음으로 기존 키 페어가 없다면(처음 실행해본 것이라면), 새 키 페어 선택 후 키 페어 다운로드를 합니다. 키페어 저장 장소는 잘 기억해 둡시다!
이제 "인스턴스 시작" 클릭합니다.
아래쪽 화면에 생성된 인스턴스의 해당하는 정보들이 써있습니다. 여기서 보안그룹의 이름을 기억합니다. 또한 인스턴스의 IPv4 퍼블릭 IP도 기억합니다!
그리고 좌측 메뉴바 중 보안그룹을 클릭 합니다. 그 다음 아까 기억한 해당 보안그룹 이름 선택 후, 인바운드 규칙 편집에서 아래와 같이 추가합니다!
2. XShell
xshell에 접속하여 새 세션 등록 후 아래 호스트에 아까 기억했던 IPv4 퍼블릭 IP를 입력합니다.
그 다음 범주에서 연결-사용자 인증을 클릭합니다. 그리고 아까 저장한 키 페어를 사용자 키에 등록한 후, 사용자 이름을 ubuntu로 지정해줍니다. 이제 세션을 연결해줍니다~
세션 연결 후 shell창에 아파치 웹서버를 설치합니다!
sudo apt-get update
sudo apt-get install apache2
sudo apt-get install liapache2-mod-wsgi
그리고 flask 및 여러가지 필요한 모듈들을 설치해 줍니다.
sudo pip install flask
flaskapp 디렉토리를 생성해 줍니다.
mkdir ~/flaskapp
sudo ln -sT ~/flaskapp /var/www/html/flaskapp
해당 디렉토리로 이동한 후 실행시킬 파일의 이름을 flaskapp.py로 저장하였습니다.
그리고 flaskapp.wsgi를 생성하여 다음과 같이 입력했습니다!
import sys
sys.path.insert(0,’/var/www/html/flaskapp’)
from flaskapp import app as application
다음으로 vi /etc/apache2/sites-enabled/000-default.conf 한 후, documentRoot /var/www/html 줄 아래에 다음의 코드 추가해줍니다 !!
WSGIDaemonProcess flaskapp threads=5
WSGIScriptAlias / /var/www/html/flaskapp/flaskapp.wsgi
<Directory flaskapp>
WSGIProcessGroup flaskapp
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>
마지막으로 아파치를 재 시작 해줍니다.
sudo apachectl restart
이제 주소창에 "IPv4 퍼블릭 IP:80" 접속가능하게 됩니다
참고한 사이트
https://www.datasciencebytes.com/bytes/2015/02/24/running-a-flask-app-on-aws-ec2
'IT > web, hosting' 카테고리의 다른 글
nginx로 로드밸런싱 설정하기 (0) | 2023.12.13 |
---|---|
AWS EC2에서 RDS 연동후 Flask 적용 (0) | 2020.02.22 |
pythonanywhere flask 배포하기 (2) | 2020.02.10 |