EC studio EC studio 技術ブログ

Googleが提供する、Google App Engineというサービスを知っていますか?

Google App Engine

Amazon EC2などと同じで、Googleが用意するクラウドサーバー環境で
アプリケーション開発ができるというサービスです。
(レンタルサーバーのようなもの)

その大きな特徴は、なんといっても月間500万PV相当まで"無料"ということです。
※有料で制限を拡張することも可能

「App Engine は無料で始めることができます。最大 500 MB の永続性ストレージに加え、月間約 500 万ページ ビューに対応できる十分な CPU と帯域幅を、すべてのアプリケーションで完全に無料で利用できます。」
- Google App Engine公式ドキュメントより

月間500万PVというと、相当な人気サイトでも余裕でさばけるようなスペックです。
これが無料というのはスゴイ・・・。

もちろんGoogleが提供する環境なので、信頼性の高さ(落ちにくさ)は間違いなしです。

このGoogle App Engine(以下 GAE)、アプリケーション開発だけでしか
使えないと思われがちなのですが、実は設定を工夫すれば
通常のHTMLによるサイトを作って運用することも可能です。

多少初期設定の手順は複雑ですが、このスペックのサーバーを無料で
使用出来ることを考えれば試してみる価値はあるのではないかと思います。

Webサイトを立ち上げるまでの手順をまとめてみましたので、公開したいと思います。
※縮小してある画像はクリックして拡大できます

1.Google App Engineを登録する

Google App Engine 登録

まずは、Google App Engineに登録する必要があります。
Googleアカウント(GMAIL)が必要なので、
持っていない方は事前に作成してください。

下記のURLから登録できます。

https://appengine.google.com/

Google Appsでも利用可能です。その場合は、

https://appengine.google.com/a/ドメイン名

から登録してください。

アカウントの登録ができたら、早速アプリケーションを作りましょう。
GAEにログインすると下記のような画面になります。

アプリケーションの作成

「Create Application」 をクリックします。
初回だけ、携帯メールでの認証が必要になります。

携帯認証

SMSと書いてますが、通常のメールアドレスで大丈夫です。

CountryにJapan、キャリアにdocomoなどを設定して、
Usernameのところにはメールアドレスを入力しましょう。

設定すると、携帯にメールが飛んできますので、
そのメール内にあるGoogle App Engine Codeを
フォームに入力すれば完了です。

認証が完了すれば、アプリケーションを作成できます。

アプリケーション作成フォーム

作成するアプリケーション(サイト)の情報を入力しましょう。
「Application Identifier」がアプリケーション一つ一つに割り当てられるサブドメイン名になります。
この部分は後から変更したり、削除することができないので注意!
ドメインを取得するつもりで設定しましょう。

タイトルは後からでも変更できます。

アプリケーション一覧

作成が完了しました。
いまのところ、最大10個まで無料でアプリケーションを作成できます。

これで、オンライン側の設定は完了です!

2.開発環境のセットアップ

GAEへファイルをアップロードするには、FTPソフトなどの代わりに
Googleが用意する開発環境(SDK)を使用します。

いくつかソフトをインストールする必要があるので、
下記の手順でインストールしてください。

1.Pythonをダウンロード (v2.6.4)

GAEで動くスクリプト環境のPythonをインスールします。
各OSにあったファイルをダウンロードしてください。
(Python 3.x.xではなく、2.x.xのバージョンを選んでください)

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

Pythonのダウンロード

1.1 Pythonをインストール

Pythonのインストール

素直に「Next」を選んでいけばokです。

2.Google App Engine SDK をダウンロード

次にGAEの開発環境であるSDKをインストールします。

http://code.google.com/intl/ja/appengine/downloads.html

GAE SDKダウンロード

2.1 Google App Engine SDK をインストール

GAE SDKインストール

こちらも、そのまま「Next」を選べばokです。
これでGAEを使った開発環境のセットアップが完了しました!

3.Google App Engine Launcherを使ってファイルをアップロード

ではさっそく、先程インストールしたGoogle App Engine SDKを起動しましょう。

GAEランチャーの起動

スタートメニューから、
「Google App Engine Launcher」を選択します。

GAEランチャー

こんな画面が出てくればokです。
このアプリケーションを使ってファイルのアップロードなどを行います。
では、アプリケーションを追加してみましょう。

GAEランチャー アプリケーション作成

メニューの「File」から
「Create New Application..」をクリックします。

GAEランチャー アプリケーションの作成

「Application Name」に、最初にブラウザ側で作成した
アプリケーション名を入れます。
(Application Identiferの部分。サブドメインにあたるところです)

「Parent Directory」にはhtmlファイルなどを
入れるフォルダを指定します。
(指定したフォルダに、アプリケーション名のサブフォルダが作成されます)

作成すると、下部のボックスに表示されるようになります。

GAEランチャー アプリケーション選択

作成したアプリケーションを選択し、「Run」ボタンをクリックします。

GARランチャー アプリケーション起動

するとアプリケーションが起動します。
「Browse」ボタンを押すとローカル環境でテスト表示させることができます。
サーバーへのアップロードには、「Deploy」ボタンを使用します。

「Deploy」を押して、サーバーへアップしてみましょう。

デプロイ認証

Googleの認証を求められるので、Google App Engineに登録した
メールアドレスとパスワードを入力します。

GAEランチャー デプロイログ

認証に成功すれば、ファイルがサーバーへと自動的にアップロードされます。

http://[アプリケーション名].appspot.com

をブラウザで表示してみてください。
([アプリケーション名]の ところはApplication Identiferを入れてください)

Hello World!

と表示されていれば成功です!

4.Google App Engineを使ってWebサイトを立ち上げる

お待たせしました、ここからが本番です。
さきほどの様な要領でファイルをサーバーにアップロードできるのですが、
初期設定ではHTMLなどのファイルを上げても表示することができません。

アプリケーション開発用の設定になっているからなのですが、これを
Webサイト用の設定に書き換える必要があります。

では、Google App Engine Launcherで作成したアプリケーションの、
Parent Directoryで指定したフォルダの中にあるファイルをエクスプローラーで開いてください。

デフォルトのファイル

このような、3つのファイルがあるかと思います。
初期状態ではリクエストはすべてmain.pyというファイルで
処理されるような設定になっていますが、ここを変更して
HTMLファイルなどを自由に表示できるようにしてみます。

まず、HTMLファイルなどを入れるフォルダを作成します。

htdocsフォルダを作成

ここではサーバーの慣習にならって「htdocs」というフォルダを作りました。
(別のフォルダ名でも全然okです)

このフォルダの中に、アップしたいサイトのHTMLファイルや画像、
CSSファイルなどを入れておきます。

サイトのファイルを入れておく
次に、最初からある「app.yaml」 というファイルを編集します。
(メモ帳などのテキストエディタで開きます)

初期設定では

  1. application: [xxxxxx]
  2. version: 1
  3. runtime: python
  4. api_version: 1
  5.  
  6. handlers:
  7. - url: .*
  8.   script: main.py

※[xxxxxx]の部分は、各アプリケーション名
こうなっていますが、これを

  1. application: [xxxxxx]
  2. version: 1
  3. runtime: python
  4. api_version: 1
  5.  
  6. handlers:
  7. - url: /
  8.   static_files: htdocs/index.html
  9.   upload: /
  10. - url: /
  11.   static_dir: htdocs

この様に変更します。
(handlers: 以降の行を変更)

こう設定することで、htdocs/ 以下のフォルダを
Webサイトとして表示することができるようになりました。

例えば、

http://[アプリケーション名].appspot.com/page.html


htdocs/page.html

と関連付けられ、サブフォルダがある場合でも

http://[アプリケーション名].appspot.com/image/logo.jpg


htdocs/image/logo.jpg

と、同様に関連付けられるようになります。
アップしたいファイルを入れて、「Deploy」してみましょう!

完成!

お疲れ様でした!

あとはサイトの更新時にはhtdocsフォルダの中身を変更し、
随時Deployすればサーバーへアップロードできます。

このGoogle App Engineには独自ドメインを使用することもできるので、
本当にレンタルサーバー的に使用することができます。

GAEの詳しい使い方や、設定の詳細を知りたい方は
Googleのドキュメントを参照してください。

デベロッパー ガイド
http://code.google.com/intl/ja/appengine/docs/

ただ、GAEの欠点としてはPHPなどのプログラムを動かすことができません。
PythonやJavaのアプリケーションは動作しますが、
Googleの特殊な環境で動作するようになっていないといけません。

単純なお問い合わせフォームや注文フォームなどだけの場合は、
Googleドキュメントのフォーム機能を使うことをオススメします。
(とても簡単にお問い合わせフォームなどを組み込めます)

参考リンク:http://google-mania.net/archives/1039

またGAEを使ってみて面白いことがわかればブログ記事にしていきたいと思います。 :)

ご要望やご質問、感想などがあれば私のtwitterまでどうぞ!
(http://twitter.com/msk_masaki)


[告知]
EC studioで本を出版することになりました!
EC studioでiPhoneとtwitterを全社導入した時の事例や、
Google Appsの活用法などを詳しくまとめています。
Google 辻野社長との対談も収録!

「iPhoneとツイッターで会社は儲かる」

詳しくはこちらの詳細ページをご覧下さい!


関連した記事:

■「iPhoneとツイッターで会社は儲かる」

ツイッター全社導入によるメリット・デメリット、
導入して起きた効果、社内への落とし込み方、
iPhone とツイッター、iPhone 活用方法、
さらには、iPhone×ツイッター×Google Apps™によって起こる
クラウド上のコミュニケーション革命について詳細に解説します。
最終章にはGoogle 代表取締役社長 辻野氏との対談を収録。

「iPhoneとツイッターで会社は儲かる」

ブックマークプラス by SEO対策

この記事へのコメント (5)

月間500万PVまで無料という表現についてご指摘をいただいたので、修正しました。
正確には月間500万PV相当まで無料です。
詳しくはGoogleの公式ドキュメントを参照してください。

投稿者: 山本 正喜 | 2010/02/08 月曜日 13:51:01
投稿者: 鷹野三四 | 2010/02/08 月曜日 17:54:35

Java版の開発環境構築の記事を書いてみましたので、良かったら参考にしてください。
http://d.hatena.ne.jp/gungnir_odin/20100208

投稿者: gungnir_odin | 2010/02/09 火曜日 0:03:04

python2.6でも動くようになったんですか。以前は2.5以外ダメだったのに。

投稿者: hoge | 2010/02/09 火曜日 13:11:53

はい、2.6でも動きました。

投稿者: 山本 正喜 | 2010/02/09 火曜日 15:49:26
コメントを投稿

山本敏行 著書
「iPhoneとツイッターで会社は儲かる」

「iPhoneとツイッターで会社は儲かる」
iPhoneとTwitterのビジネス活用について著された初めての書籍です。Google辻野社長へのスペシャルインタビューでGoogleが描く未来についてもお話いただきました。

EC studio 採用情報の詳細はこちら

投稿者
第4回 Web&モバイル マーケティング EXPO
第4回 Web&モバイル マーケティング EXPO

「第4回 Web&モバイル マーケティング EXPO」 に Web Analyst(ウェブアナリスト)を出展いたします。

全ECスタッフ導入の
おすすめソフトウェア
人気のエントリー
Web Analyst(ウェブアナリスト)ブログ
カテゴリー
最近のエントリー
アーカイブ
RSSリーダーに登録する
  • はてなRSSに追加
  • livedoor Readerに追加
  • My Yahoo!に追加
  • Googleに追加
  • goo RSSリーダーに追加
  • Bloglinesに追加
  • Technoratiに追加
  • PAIPOREADERに追加
  • newsgatorに追加
  • feedpathに追加

Powered by SEO対策
RSSプラス

RSSの購読者数を増やす
RSSプラスを設置しませんか?

BLOG オフィシャルブログ

社長ブログ
EC studio社長ブログ

ブログを読む

技術ブログ
技術部のブログ

ブログを読む

デザインブログ
デザイン部のブログ

ブログを読む

Copyright© EC studio, All Rights Reserved.