Quitada ブログ HAX

Hatena Blog でも Quitada ブログ

Google App Engine 用の Python Web アプリを Eclipse で開発

Google App Engine(以下、GAE)用の Java Web アプリケーションを開発する場合は、Google から Eclipse プラグインが提供されているんで、こちらのサイト様とか参考にしてインストールすれば、アプリ開発からスタンドアロン PC 上でのテストと GAE へのデプロイも Eclipse 上で完結するのであまりコマンドラインとか弄りたくない人にとってみればナイスな環境が提供されていますよね。

一方、Python 用のはというと Google からは提供されてなくて、Pydev という Eclipse プラグインがあって、これが GAE 用の Python Web アプリ開発に対応しているようで。

ネットで調べてみると、Pydev インストールして GAE の Python Web アプリプロジェクト作って、スタンドアロンの PC 上で動作確認、までは結構紹介されているけど、Eclipse から GAE へのデプロイ方法ってのがないようなんで、それも含めて本エントリでまとめてみようと思います。

1.Eclipse と Pydev による GAE の開発環境構築
以下のサイト様を参考に、Eclipse と Pydev をインストールします。

EclipseとPydevによるGoogle App Engineの開発環境構築

上記サイト様では、GAE 用 Web アプリケーションのプロジェクトを作成するところで、以下の画面で [完了] を押下して終了してしまってますが、サンプルアプリケーションができた状態にするため [次へ] を押下します。

次に以下のような画面がでてくるので、「From which template...」の下のリストからとりあえず「Hellow Webapp World」を選択して、[完了] を押下します。

なお、「What's the application id...」の下のフォームはデフォルトで「sample-app」となっていますが、これは、GAE にデプロイする際の識別子となります。後で編集可能なので、今はデフォルトのままで OK です。

2.ローカルマシンでの動作確認
テスト用の Web サーバを起動して、動作確認します。

まず、Pydev をインストールした Eclipse を起動した状態で、作成した GAE 用 Web アプリケーションのプロジェクトで、以下のように、左ペイン(Pydev パッケージエクスプローラ)の src を右クリックしてフォーカスをいれた状態にします。

次に、以下のようにメニューから、「実行(R)> 実行(S)> 1.Pydev: Google App Engine Run(1)」とたどってローカルマシンにテスト用の Web サーバを起動します。

#以降は、メニューから「実行(R)> 実行(S)」とたどるか、Ctrl + F11 を押下すると実行可能です。

以下のように、コンソールウィンドウにメッセージが表示されれば起動成功です。なお、テスト用 Web サーバを停止するには、コンソールウィンドウの上の方にある赤い四角ボタンを押します。

#内部的には、dev_appserver.py を起動・停止しているだけですね、基本。

適当な Web ブラウザで、http://localhost:8080 にアクセスすると、当該 Web アプリケーションの動作確認が可能です。

3.GAE へのデプロイと実行
以下のサイト様等を参考に、GAE の登録を行ってください。

Google App Engineを使って無料でサイトを立ち上げる方法

着目していただきたいのは、アプリケーション生成時に設定した Application Identifier です。

プロジェクトを作成した際にデフォルトのまま「sample-app」としていたものなので、これを Google App Engine 登録時に作成した Application Identifier に修正してやる必要があります。

# Application Identifier は、無料の範囲内では 10 個まで持てるようです(2010 年 7/26 現在)。

Pydev の左ペインで、app.yaml をダブルクリックし、真ん中ペインのエディタで開きます。以下のように、1 行目の application の部分を、Application Identifier に書き換えてやります。

#この例では、Application Identifier が「q-python」であるということですね。

これで保存して、左ペインの src を右クリックして、以下のように「Pydev: Google App Engine > アップロード」とたどります。

すると以下のようなウィンドウがでてきて、内部的に「appcfg.py update」が実行され、途中経過のメッセージが表示されていきます。すると、メールアドレスをきいてくるので、以下のように「Send to」の部分に GAE 登録時に使用したメールアドレスを入力します。

直後に、パスワードをきいてきます。これも、GAE 登録時にメールアドレスをユーザー名とするアカウントのパスワードを入力します。

認証が成功すると、GAE へのデプロイが始まります。メッセージに「FINISHED」とでてきたら終了です。

#もちろん、一連の GAE へのデプロイ作業は、インターネットに接続した環境で行う必要があります。

あとは、インターネットに接続された PC から、適当な Web ブラウザで、http://[Application Identifier].appspot.com にアクセスすると、Google App Engine にデプロイされた当該 Web アプリケーションの動作確認が可能です。