ローカル開発用サーバー(dev_appserver.py
)は、gcloud CLI の App Engine コンポーネントの一部です。ここでは、dev_appserver.py
の使用方法を詳細に説明します。ローカルテストの詳細については、ローカル開発用サーバーの使用方法をご覧ください。
ローカル開発用サーバーツールをセットアップする
dev_appserver.py
コマンドの例を以下に示します。
python2 DEVAPPSERVER_ROOT/google_appengine/dev_appserver.py OPTION yaml_path FILES
次のように置き換えます。
- DEVAPPSERVER_ROOT は、
devapp_server.py
のアーカイブ バージョンを抽出するルート ディレクトリへのパスに置き換えます。アーカイブ バージョンのdev_appserver.py
のダウンロードと使用の詳細については、ローカル開発用サーバーの使用をご覧ください。 - OPTION は、ローカル開発用サーバーでサポートされているフラグに置き換えます。
- FILES は位置引数
yaml_path
に対してサービスごとに 1 つずつ、1 つ以上のapp.yaml
ファイルを指定します。
オプションの一覧を表示するには、次のコマンドを実行します。
DEVAPPSERVER_ROOT/google_appengine/dev_appserver.py -h
一般的なオプション
特に一般的なオプションは次のとおりです。
--admin_host=ADMIN_HOST
- ローカル開発用サーバーの管理コンソールのバインド先となるホスト名(デフォルト: localhost)。
--admin_port=ADMIN_PORT
- ローカル開発用サーバーの管理コンソールがバインドするポート(デフォルト: 8000)。
--enable_sendmail=yes|no
- メール メッセージの送信にローカル コンピュータの Sendmail を使用します。
--enable_task_running=yes|no
- 開発用サーバーが push タスクを実行できるようにします。デフォルトは
yes
です。no
を指定すると、サーバーは push タスクを実行しません。 --help
- コマンドの簡単な説明を出力して終了します。
--host=...
- サーバーに使用するホストアドレス。この設定は、ネットワーク上の別のコンピュータから開発用サーバーにアクセスできるようにするために必要になることがあります。アドレスを
0.0.0.0
にすると、localhost アクセスと IP またはホスト名アクセスの両方が可能になります。デフォルトはlocalhost
です。 --log_level=...
- コンソールにロギング メッセージを出力する最小ロギングレベル。指定したロギングレベル以上のメッセージが出力されます。有効な値は
debug
、info
、warning
、error
、critical
です。 --port=...
- サーバーに使用するポート番号。デフォルトは
8080
です。サービスなどのために複数のサーバーが起動されると、後続のポート番号が割り当てられます(例:8081
、8082
)。 --logs_path=...
- デフォルトでは、ローカル開発用サーバーログはメモリだけに格納されます。ローカル開発用サーバーを実行するときにこのオプションを指定すると、ログがファイルに保存されるため、サーバーを再起動した場合でもログを参照できるようになります。SQLite データベース ファイルのディレクトリ パスと名前を指定する必要があります。ファイルが存在しない場合は、指定した名前の SQLite データベース ファイルが作成されます。例:
--logs_path=/home/logs/boglogs.db
--require_indexes=yes|no
index.yaml
ファイル内のエントリの自動生成を無効にします。アプリケーションが、ファイルでのインデックス定義を必要とするクエリを実行し、インデックス定義が見つからなかった場合は、App Engine で実行した場合と同様に例外が発生します。デフォルト値はno
です。--runtime_python_path=...
- Python 3 バイナリのパス。
dev_appserver
で Python 3 アプリを実行するには、このフラグを指定します。
--smtp_host=...
- メール メッセージの送信に使用する SMTP サーバーのホスト名。
--smtp_port=...
- メール メッセージの送信に使用する SMTP サーバーのポート番号。
--smtp_user=...
- メール メッセージの送信に使用する SMTP サーバーのユーザー名。
--smtp_password=...
- メール メッセージの送信に使用する SMTP サーバーのパスワード。
--storage_path=...
--datastore_path
、--blobstore_path
、--logs_path
によりオーバーライドされない限り、すべてのローカル ファイル(Cloud Datastore、Blobstore、Cloud Storage のファイルやログなど)が保存されるパス。--support_datastore_emulator=yes|no
- ローカル データストアのエミュレーションに、Cloud Datastore エミュレータ(ベータ版)を使用します。
--datastore_emulator_port=...
- Cloud Datastore エミュレータ(ベータ版)に使用するポート番号。
--env_var=...
- ローカル ランタイム プロセス用のユーザー定義の環境変数。各
env_var
は key=value の形式で、複数の環境変数を定義できます。app.yaml
内のenv_variables
と同時にこのフラグを使用すると、ローカル プロセス用に特別な環境変数を設定できます。例:--env_var KEY_1=val1 --env_var KEY_2=val2