Cloud9에서 GAE/p 개발 환경 구축

5514 단어 GAEcloud9
서버 사이드 앱을 만드는데 오랫동안 GAE(Google App Engine)를 하려고 손을 움직이려고 했지만, 환경 구축이 너무 귀찮아서 의욕이 없어졌다.

그런데, 조사하고 있는 도중에 Web IDE 되는 분야가 있는 것을 알고, 최근 몇 년간 실용에 견딜 수 있는 비약을 이루고 있는 것에 놀랐다.

그래서 웹 IDE에서도 고기능이라고 하는 Cloud9를 사용해 GAE/p(Google App Engine for Python)의 개발 환경을 구축하는 곳까지 정리한다. 어쩐지 요구가 많을 것 같지만, 특히 일본어의 Tips 사이트가 거의 발견되지 않았다.

Cloud9 준비



준비도 아무것도, 사이트에 액세스해 로그인하면 OK.
또한 Github 계정이 있으면 즉시 로그인하여 사용할 수 있습니다.

Cloud9
  htps // c9. 이오/

덧붙여서, 제한 첨부이지만, 현상은 기한 없이 Free로 사용할 수 있다 ( 여기를 참조 ).

우선 적당히 Workspace를 만들어 둔다.
Choose a template에서는 Custom을 선택해 둔다.

Workspace를 만든 후 IDE가 시작된다.
이런 느낌↓



Cloud9에서는 Linux Terminal을 사용할 수 있다.
이것은 매우 고맙습니다.
IDE의 하단에 bash 탭이 있으므로 여기에서 명령이 두드린다.

GAE SDK 설치



bash Terminal에서 SDK를 다운로드합니다.
다운로드나 zip의 전개 장소는 어디라도 좋지만, 이하의 커멘드 예에서는 sdk 폴더를 만들어, 그 아래에 전개하고 있다.
$ mkdir sdk
$ cd sdk
$ wget https://storage.googleapis.com/appengine-sdks/featured/google_appengine_1.9.30.zip
$ unzip google_appengine_1.9.30.zip

덧붙여 상기는 2016/01/10 시점에서의 최신 버전.
취득 전에 최신 버전을 점검 해 두는 것이 좋다.

PATH를 통과한다.
$ vi ~/.bashrc

(末尾に追記)
PATH=$PATH:/home/ubuntu/workspace/sdk/google_appengine/

읽어 둡니다.
$ source ~/.bashrc

파이썬 버전을 살펴보십시오.
GAE는 Python2.7을 요구하고 있지만, Cloud9 환경도 아무것도 하지 않아도 2.7계가 되어 있었으므로 이대로 OK.
$ /usr/bin/env python -V
Python 2.7.6

설치는 여기까지.

Hello World 이동



Hello World(서버 앱)를 만들고 GAE 개발용 런타임을 Cloud9에서 시작하여 동작 확인을 한다. 이 게시물의 키모.

우선은 Hello World인 샘플 코드.
workspace 바로 아래라면 그렇기 때문에 app1 폴더를 만들어 거기에 넣기로 한다.

app1/hw.py
print 'Content-Type: text/plain'
print ''
print 'Hello, world!'

이어서 앱의 Config 파일을 준비한다. 대상 app1 폴더에 놓습니다.

app1/app.yaml
application: app1
version: 1
runtime: python
api_version: 1
handlers:
- url: /.*
  script: hw.py

막상, Cloud9상에서 GAE 개발용 런타임을 기동한다.
일반적인 GAE 환경이라면 localhost : 8080 등으로 액세스 할 수 있지만 Cloud9라고 그렇지도 않습니다.
Cloud9 IDE에서 사용할 수 있는 포트가 제한되어 있습니다(여기 참조).

다음과 같이 host와 port를 지정해 기동한다.
$ dev_appserver.py app1 --host $IP --port $PORT --admin_host $IP --admin_port 8082

이 때 $IP에는 0.0.0.0가, $PORT에는 8080가 들어 있다.

잘 시작하면 다음과 같은 Cloud9 메시지가 표시됩니다.



덧붙여서 좋지 않았다면 이런 느낌 ↓
--host와 --port 지정이 잘 되지 않으면 이렇게 된다.



시작된 런라임의 샘플 앱에 액세스합니다.
Cloud9에서 열린 Port와 URL의 관계는 여기에 설명이 있다.

--port 로 $PORT (=8080) 를 지정하고 있으므로, 다음의 URL에 액세스 하면 OK.

https://<workspace-name> - <username> .c9users.io/
<workspace-name><username>는 각각의 환경으로 대체됩니다. (ex. test-yamadataro.c9users.io)
앞의 설명 페이지에서는 URL은 https처럼 보이지만 실제로는 http에서도 액세스 할 수있었습니다.

아래와 같이 표시되면 OK.



이렇게 정리해 보니 어쩔 수 없지만, 정보가 적고 실망하기 어려웠다.
여러분의 환경 구축의 도움이 되면 다행이다.

좋은 웹페이지 즐겨찾기