Livingdeadの日記: Google App Engine SDKをローカルアプリのプラットフォームとして使う
最近、GUIをウェブベースで設計する事が多くなってきた。そこでPythonで作っている幾つかのツールでもGUIをウェブベースにしてみようと思った。となるとコンパクトなHTTPサーバが必要なのだが、幸いなことにPythonには標準でSimpleHTTPServerやそれに類するモジュールが用意されている。しかし実際に作り始めて見るとあれこれと機能が欲しくなる。たとえばO/Rマッパーとかテンプレートエンジンとかアプリケーションランチャーとか。
で、ふと思った。こういうのって既に誰かが作ってくれてるはずだよな。Google App Engine SDKに入っているローカルサーバならそのあたりのもろもろの環境が揃ってる。そこでGoogle App Engine SDKをローカルアプリのプラットフォームとして使ってみることにした。以前にもDjangoのO/Rマッパーを普通のPythonアプリケーションで利用するなんてことをやっていたが、どうせ一部の機能はウェブアプリケーションとしてGoogle App Engineに持っていくつもりだし、だったらローカルでもGoogle App Engine SDKをSDKとしてじゃなくてアプリケーションプラットフォームとして使ってみようと。
最初に気になったのが、自分がメインで使っているPythonは2.6だということ。Google App Engine SDKはPython 2.5で動くことを前提として作られている。曖昧な記憶ではあるが、バージョン1.2.7のSDKはPython 2.6で動かなかったように思う。先月(2010年2月)にSDK 1.3.1がリリースされた(App Engine SDK 1.3.1, Including Major Improvements to Datastore!)ので、それで試してみると、インタープリタが2.6でもSDKは動く。でもアプリとして入っているゲストブックくらいなら問題ないようだ。
というわけで、これからしばらく幾つかのツールをGoogle App Engine SDK 1.3.1に含まれるローカルサーバの上で動くように手を入れてみようと思う。
という自分用メモ。
Google App Engine SDKをローカルアプリのプラットフォームとして使う More ログイン