23
Ubuntu에서 Flask개발 맛보기 - 1 신부설 latest:2015.04.13 2015.04.11 2015.02.13

Ubuntu에서 Flask개발 맛보기 - 1

  • Upload
    bs-sin

  • View
    269

  • Download
    2

Embed Size (px)

Citation preview

Ubuntu에서 Flask개발 맛보기 - 1

신부설latest:2015.04.13

2015.04.112015.02.13

ubuntu(개발 환경, 서버 운용)

python(앱 로직 개발 언어)

pip(파이썬 패키지 관리자)

virtualenv(독립된 파이썬 환경 구축자)

sublime text(코드 편집기)

flask(앱 로직을 위한 프레임워크)

Server side 준비물

mysql(데이터 DB)

sqlalchemy(웹서버 로직과 DB를 연결하는 ORM)

Nginx(웹 서버, 앱서버의 실행환경)

uWSGI(앱 서버)

Client side 준비물

크롬 브라우저의 앱 postman RESTclient(클라이언트 시뮬레이터)

1. 우분투 환경에 파이썬 개발 환경을 구축할 수 있습니다.

2. Flask 프레임워크를 사용해 앱 로직을 개발할 수 있습니다.

3. Flask와 MySQL을 연동시켜 데이터를 관리할 수 있습니다.

4. Nginx&uWSGI 웹서버를 우분투에 올려 동작시킬 수 있습니다.

5. Flask로 만든 웹앱을 Nginx&uWSGI 웹서버에 배포할 수 있습니다.

이 학습을 통해 배울 수 있는 것

Python이란? (앱 로직 개발 언어)

파이썬은 무료 프로그래밍 언어입니다.

파이썬은 교육용으로 개발되어서 문법이 쉽고 간결합니다.

파이썬의 철학은 "최선의 방법 한 가지를 사용하자"입니다.

파이썬은 다루기 쉽고 필요한 대부분의 기능이 좋은 라이브러리로 제공되

기 때문에 파이썬을 사용하면 생산성이 높아집니다.

Python 설치

파이썬은 우분투에 처음부터 설치되어 있습니다.

PIP란? (파이썬 패키지 관리자)

PIP(Pip installs packages)는 파이썬 패키지 관리자 중 하나입니다.

PIP는 어떤 파이썬 패키지를 설치할 때

설치할 패키지가 의존하는 다른 패키지들도 함께 설치해줍니다.

PIP는 easy_install의 향상된 버전입니다.

앞으로 easy_install은 폐기될 예정이라고 합니다.

따라서 이왕에 PIP를 사용합니다.

PIP 설치

-설치-

$sudo apt-get install python-setuptools

$sudo easy_install pip

-주의-

다음 명령 $sudo apt-get install python-pip으로 한 번 더 설치하면 중복되

어 설치되므로 굳이 이 명령으로 설치하지 않습니다.

virtualenv란? (독립된 파이썬 환경 구축자)

virtualenv는 하나의 컴퓨터에서 여러 개의 독립된 파이썬 환경을

가상으로 구축할 수 있도록 도와주는 도구입니다.

virtualenv 설치

-설치-

$sudo pip install virtualenv

-주의-

다음 명령 $sudo apt-get install python-virtualenv으로 한 번 더 설치하면

중복되어 설치되므로 굳이 이 명령으로 설치하지 않습니다.

-가상으로 환경 구축-

$sudo mkdir /home/bssin #bssin은 유저디렉토리

$sudo cd /home/bssin

$sudo virtualenv venv

$sudo . /home/bssin/venv/bin/activate #가상환경 실행

가상환경 종료는 deactivate

독립된 파이썬 환경을 가상으로 구축

SublimeText란? (코드 편집기)

SublimeText(이하 ST)는 가볍고 빠른 에디터입니다.

코드 힌트, 린트 관련 플러그인을 설치하여 사용할 수 있고,

빌드툴 연동 등의 다양한 기능을 가지고 있어서

파이썬 개발에 유용합니다.

SublimeText 설치

http://www.sublimetext.com/3

SublimeText 설치

내려받은 .deb파일을 실행해서 설치합니다.

개발언어를 python으로 설정

빌드시스템을 독립된 파이썬 환경으로 설정

ST에서 독립된 파이썬 환경을 통해 빌드하려면 새 빌드시스템을 만들어야 합니다.

Tools - Build System - New Build System열린 파일에서 아래 이미지와 같이 입력하고 파일을 저장합니다.

플러그인 Package Manager 설치

ST의 플러그인 중 하나인 패키지 매니저는

쉽게 패키지 또는 플러그인을 찾고 설치하는 기능을 제공합니다.

플러그인 Package Manager 설치

https://packagecontrol.io/installation#st3

아래 이미지에서 빨간박스 안에 있는 내용을 복사합니다.

서브라임텍스트에서 단축키 Ctrl + ` 를

누르면 콘솔창이 나타납니다.

콘솔창에 복사했던 내용을 붙여넣고 엔

터를 칩니다.

곧바로 패키지 매니저가 설치됩니다.

플러그인 SublimeREPL 설치

SublimeREPL은 인터프리터 언어들에게 대화형 모드를 지원하도록 도와주는 플러그인입니다.

단축키 Ctrl+Shift+P를 누르면 검색창이 나타납니다.pci를 타이핑하면 Install Package가 찾아집니다. 선택하고 엔터를 치면 새로운 검색창이 나타납니다.repl을 타이핑하면 SublimeTextREPL이 찾아집니다. 선택하고 엔터를 치면 곧바로 설치됩니다.

플러그인 SublimeREPL 설치

ST에서 독립된 파이썬 환경을 통해 인터프리터를 실행하려면SublimeREPL의 설정파일을 수정해야 합니다.

Preferences - Package Settings - SublimeTextREPL - Default열린 파일에서 python_virtualenv_paths속성에"/home/bssin/venv"를 추가합니다.

Flask란? (앱 로직을 위한 프레임워크)

앱 로직을 파이썬으로 쉽고 편하게 작성할 수 있도록 돕는

파이썬 기반의 마이크로 웹 프레임워크입니다.

마이크로라는 뜻에는 최소한의 기본 기능만 담고 있으면서

추가로 필요한 기능은 라이브러리를 선택해 도입하도록 하겠다는

철학이 담겨있습니다.

Flask 설치

-독립된 파이썬 환경에 설치-

$sudo . /home/bssin/venv/bin/activate #먼저 독립된 가상환경을 실행

(venv)$sudo pip install flask

이 환경에는 Flask와 함께, Flask가 의존하는

벡자이크 WSGI 툴킷 라이브러리와 Jinja2 템플릿 엔진 라이브러리가

함께 설치됩니다.

2에서 계속참고 서적: 파이썬 웹 프로그래밍 플라스크를 이용한 쉽고 바른 웹개발주성식, 홍성민. (2014). 위키북스

신부설 [email protected]