ローカル開発用サーバー(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|noindex.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