Google App EngineでHello World!! + ローカルLinux環境

| | Comments (0) | TrackBacks (0)
Google App Engineのライセンスが届いたので、Hello Worldしてみました。

OS : CentOS 32bit(i386)
Python : 2.5.2

注意 : すでにVMWareかなにかでCentOSが導入されていることを前提に書いていきます。

なにはともあれまず、Google App Engine用のユーザを作成します。

Linux ユーザ作成
# useradd google
# passwd google
Changing password for user google.
New UNIX password: パスワード入力
Retype new UNIX password: もう一度パスワード入力
passwd: all authentication tokens updated successfully.

# su - google

Python インストール(2.5.2の場合です。そのとき最新の2.5.xをいれましょう)
Download 2.5.2
$ wget
$ tar xzvf Python-2.5.2.tgz
$ cd Python-2.5.2
$ mkdir -p ~/ll/py/
$ ./configure --prefix=/home/google/ll/py/
./counfigureの実行後、makeの前に [ Modules/Setup ]を以下のように修正します。204行目ぐらい
-- ここから
  #_ssl _ssl.c \
  #       -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
  #       -L$(SSL)/lib -lssl -lcrypto
+ SSL=/usr
+ _ssl _ssl.c \
+       -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
+       -L$(SSL)/lib -lssl -lcrypto
-- ここまで
$ make
$ make install
$ vi ~/.bashrc
-- 追記
export PATH=/home/google/ll/py/bin:$PATH
export PYTHONPATH=/home/google/ll/py/
$ source ~/.bashrc
$ which python
$ python -V
Python 2.5.2

Google App Engine SDK インストール(Version1.0.1の場合です。)
Google App Engine SDK Download Site
$ cd

$ wget
$ unzip 
$ cd google_appengine

$ python --help
Runs a development application server for an application. [options] <application root>

Application root must be the path to the application to run in this server.
Must contain a valid app.yaml or app.yml file.

  --help, -h                 View this helpful message.
  --debug, -d                Use debug logging. (Default false)
  --clear_datastore, -c      Clear the Datastore on startup. (Default false)
  --address=ADDRESS, -a ADDRESS
                             Address to which this server should bind. (Default
  --port=PORT, -p PORT       Port for the server to run on. (Default 8080)
  --datastore_path=PATH      Path to use for storing Datastore file stub data.
                             (Default /tmp/dev_appserver.datastore)
  --history_path=PATH        Path to use for storing Datastore history.
                             (Default /tmp/dev_appserver.datastore.history)
  --require_indexes          Disallows queries that require composite indexes
                             not defined in index.yaml.
  --smtp_host=HOSTNAME       SMTP host to send test mail to.  Leaving this
                             unset will disable SMTP mail sending.
                             (Default '')
  --smtp_port=PORT           SMTP port to send test mail to.
                             (Default 25)
  --smtp_user=USER           SMTP user to connect as.  Stub will only attempt
                             to login if this field is non-empty.
                             (Default '').
  --smtp_password=PASSWORD   Password for SMTP server.
                             (Default '')
  --enable_sendmail          Enable sendmail when SMTP not configured.
                             (Default false)
  --auth_domain              Authorization domain that this app runs in.
  --debug_imports            Enables debug logging for module imports, showing
                             search paths used for finding modules and any
                             errors encountered during the import process.

Google App Engine スタートアップ(実際にHello World!!をローカル環境で動かしてみます)
注意: Google Startupに沿っています
URL (基本的にはこちらと同じことをやります。)
$ cd
$ vi ~/hello/app.yaml
-- ここから
application: hello
version: 1
runtime: python
api_version: 1

- url: /.*
-- ここまで

$ vi ~/hello/
-- ここから
print 'Content-Type: text/plain'
print ''
print 'Hello, world!'
-- ここまで
○ これだけでプログラミングは終了です。(簡単ですね!!)
$ mkdir -p /home/google/tmp
$ $ python ~/google_appengine/ --address= --port=8000 --datastore_path=/home/google/tmp/dev_appserver.datastore --history_path=/home/google/tmp/dev_appserver.datastore.history ~/hello/

Allow dev_appserver to check for updates on startup? (Y/n): Y
dev_appserver will check for updates on startup.  To change this setting, edit /home/google/.appcfg_nag
INFO     2008-04-22 19:31:07,284] Checking for updates to the SDK.
INFO     2008-04-22 19:31:07,779] The SDK is up to date.
WARNING  2008-04-22 19:31:07,780] Could not read datastore data from /home/google/tmp/dev_appserver.datastore
WARNING  2008-04-22 19:31:07,780] Could not read datastore data from /home/google/tmp/dev_appserver.datastore.history
INFO     2008-04-22 19:31:07,793] Running application hello on port 8000:
ブラウザでアクセスし、Hello World!!が表示されるか確認してみましょう。

○ 次回は、実際にGoogle App Engineにアプリケーションを作成し、Hello World!!をアップロードしてみます。

0 TrackBacks

Listed below are links to blogs that reference this entry: Google App EngineでHello World!! + ローカルLinux環境.

TrackBack URL for this entry:

Leave a comment

About this Entry

This page contains a single entry by kei published on April 22, 2008 9:34 AM.

送信ドメイン認証の導入後に想定される問題点とその対策 was the previous entry in this blog.

Google App EngineでHello World!! + ローカルLinux環境 ( 2 ) is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.