오늘은 Flask + Nginx + Uwsgi로 프로덕션 서버를디플로이하는 방식에 대해 소개하고자 합니다. 간단히 요약하면 uwsgi가 flask 앱을 실행하고 있고, nginx로 들어온 요청을 소켓 파일을 통해 uwsgi가 받아서 flask 앱으로 전해주는 구조입니다. 차근차근 진행해 봅시다. 먼저 nginx와 uwsgi를 설치해야 합니다. $ sudo apt-get install nginx(venv) $ pip install uwsgi 여기서 중요한 건 uwsgi를 pip를 통해 virtual environment 안에 설치하는 것이apt-get을 통해 설치하는 것보다 설정하기 편하다는 점입니다.이는 여러 버전의 python이 동시에 설치되어 있는 경우가 많기 때문입니다. apt-get을 통해 uws..
$ sudo apt-get install libmysqlclient-dev (venv) $ pip install Flask (venv) $ pip install SQLAlchemy (venv) $ pip install Flask-SQLAlchemy (venv) $ pip install mysqlclient mysqlclient는 mysql과 SQLAlchemy를 연결해주는 역할을 하며 libmysqlclient-dev가 먼저 설치 되어야 설치할 수 있습니다. SQLAlchemy는 python으로 작성한 코드를 SQL문으로 변환하여 mysql에 전달합니다 Flask-SQLAlchemy는 Flask app에서 SQLAlchemy를 편하게 쓸 수 있도록 해줍니다. 기본적인 코드는 다음과 같습니다.from fl..
[2017년 1월 17일 업데이트] AWS EC2 instance ubuntu가 16.04 LTS로 업데이트 되었으며 python 3.5.2가 기본으로 설치되어있습니다. 아래 포스팅에서는 virtualenvironment를 셋팅하는 부분만 참고하시면 될 것 같습니다. AWS에 Ubuntu Instance를 만들면 기본적으로 Python 2.7.6, Python 3.4.3이 설치되어있습니다. 현재 최신 버전인 Python 3.5.1을 설치해봅시다. 먼저 기본 준비물은 다음과 같습니다. $ wget 로 .tgz파일을 다운받습니다. 그리고, $ ./configure $ make$ sudo make install 을 차례로 입력해준다. 기존에 다른 버전의 python들이 설치되어 있었으므로 다음과 같이 출력될 ..
왜 밥대생 팀이 아마존으로 서버를 이전하게 되었는지에 대해서는 아래 글을 참고해주세요! 왜 밥대생 팀은 아마존으로 서버를 이전하게 되었을까? 이제 아마존 무료 서버 이용 방법에 대해서 설명드리고자 합니다. AWS의 EC2인스턴스를 t2.micro로 설치하고, Ubuntu 서버를 무료이용하는 방법에 대해 소개해드리고자 합니다. 몇가지 주의할 점만 잘 숙지하면 1년간 결제 금액이 전혀 나오지 않습니다. ( 2.5 GHz Intel Xeon Family CPU, 1GB memory, 30GB SSD를 1년간 무료로 이용할 수 있습니다.)먼저 https://aws.amazon.com/ko/ 로 가서 계정을 생성하고, 해외 결제가 가능한 마스터나 비자 등의 카드를 등록합니다.이제 로그인 후 '콘솔에 로그인' 을 ..