티스토리 뷰


2012/10/06 - [Mini Project/NY-School] - [NY-School] Google App Engine과 Python 시작하기전에 공부하기




* 이전글에 이어서 구글 앱 엔진과 파이썬을 연동하는 기본적인 hello world 프로그램부터 공부를 시작해보자.


- 파이썬 설치


: MacOSX에서는 파이썬이 보통 깔려져있으므로 현재 설치되어있는 파이썬의 버전을 확인하자.



: 현재 버전은 2.6.1로 처음 샀을 때 이후로 업데이트를 한적이 한번도 없다. 따라서 GAE가 설명하고 있는 2.7버전으로 업데이트하자. 현재 최신버전으로는 2.7.3버전과 3.3.0 버전이 있는데, 2.7.3 버전으로 진행하겠다.


http://www.python.org/download/releases/2.7.3/


* 참고 : Python 2를 선택하느냐, Python 3를 선택하느냐

http://wiki.python.org/moin/Python2orPython3



- Google App Engine SDK 설치하기


: 일단 구글 앱엔진의 SDK를 아래 사이트가서 다운 받자. 이클립스 플러그인을 사용할수도 있겠지만 설명하는 방법을 한번 따라가보자. (앞으로는 무거운 eclipse보다는 한번 Sublime Text 2와 친해지고자 한다.)


https://developers.google.com/appengine/downloads


: 설치를 하게 되면 dev_appserver.py, appcfg.py 등 구글 앱 엔진용 모듈들이 /usr/loca/bin에 설치된다.



: 일단 helloworld.py와 app.yaml을 작성하자. app.yaml는 어플리케이션의 환경 설정 파일이라고 한다.



     

helloworld.py


app.yaml


: app.yaml 파일이 의미하는 바는 위에서부터 설명하자면,


  • application: helloworld = GAE의 어플리케이션 ID이다, 나중에 deploy하고자하는 어플리케이션의 ID로 바꿀것이다.

  • version: 1 = 이 어플리케이션 코드의 버전 만약에 버전을 새롭게 업데이트한다면, GAE에서는 이전 버전을 보관해두고, 이전으로 롤백할 수 있게 도와준다.

  • api_version: 1 = 현재 어플리케이션이 실행되는 python의 런타임 환경은 버전 1로 설정한다. 나중에 추가적인 버전이 지원될 것이라고 한다. 

  • handlers = url: /.*에 매칭되는 경로는 전부다 helloworld.py가 다룰 것이다.


: 매칭되는 키와 얼추 의미가 통하여 알기 쉽다. app.yaml을 통해 환경설정하는 스펙은 아래 사이트를 참고하면 된다.

https://developers.google.com/appengine/docs/python/config/appconfig


* YAML = YAML Ain't Markup Language

: 읭? 자기가 마크업 언어가 아니라고 주장하는 이름이라니?

: 더 궁금하면 아래 사이트를 참고하면 된다. 나중에 YAML만 따로 한번 다루는것도 괜찮을 것 같다.

http://www.yaml.org/spec/1.2/spec.html


: 이제 테스트로 실행을 해보자. 위에 설치한 Google App Engine Launcher를 실행하자.


: File > Add Existing Application , 위의 파일들을 저장한 디렉토리 선택


: 그럼 위와 같이 어플리케이션이 추가된 것을 볼 수 있다. 그럼 위의 Run 버튼을 누르고 Browse 버튼이 활성화 되면 눌러보면 Hello, world!가 출력된다.

: 로컬 개발용 서버에서 돌리는 것은 이렇게 하면 된다. 이 서버를 켜놓을 경우, 어플리케이션 관련된 파일을 수정하면 웹서버에서 알아서 감지하여 업데이트를 해준다고 한다.


* 만약에 다음과 같이 에러가 났다면..

: app.yaml 입력이 잘못 된 것이다. 콜론(:) 다음에 꼭 빈칸을 하나씩 띄우는것도 잊지 말자.


: Hello, world는 출력했으니, 다음에는 이어서 webapp 프레임워크를 사용하는 것을 살펴보도록 하자.



GAE와 Python을 이용한 Hello world 끝.




공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함