App Engine アプリを構成するには、app.yaml
ファイルを使用します。このファイルには、ランタイム、ハンドラ、スケーリングのほかに、環境変数などの全般的な設定も含まれています。
app.yaml
ファイルの概要
バージョンや URL など、Java アプリのすべてのランタイム構成を app.yaml
ファイルに指定できます。このファイルは、特定のサービス バージョンのデプロイ記述子として機能します。
app.yaml
ファイルを作成しない場合は、gcloud app deploy
コマンドでアプリケーションのデプロイ時に作成できます。App Engine で作成される app.yaml
ファイルには、アプリケーションの実行に必要な設定のみが含まれます。
一般に、スタンダード環境の単純な Java アプリでは、app.yaml
ファイルで runtime
以外の要素を指定する必要はありません。次に例を示します。
runtime: java21
他の設定すべてのデフォルト値は、App Engine により提供されます。これには、アプリで使用できるメモリと CPU リソースを決定する F1 インスタンス クラスや、アプリの新しいインスタンスを作成する方法とタイミングを決定する自動スケーリングの設定などがあります。
デフォルト設定をオーバーライドする必要がある場合は、app.yaml
ファイルを作成して必要な設定を指定します。詳しくは、app.yaml
ファイルのリファレンスをご覧ください。
app.yaml
ファイルには一意の名前を指定できます。ただし、その場合はデプロイ コマンドでもそのファイル名を指定する必要があります。たとえば、app.yaml
ファイルに service-name-app.yaml
または app.standard.yaml
という名前を指定した場合は、次のいずれかを使用してアプリをデプロイする必要があります。
gcloud app deploy service-name-app.yaml
gcloud app deploy app.standard.yaml
app.yaml
ファイルを構造化する方法については、ウェブサービスの構造化をご覧ください。Maven プロジェクトの場合、app.yaml
ファイルの標準の場所は src/main/appengine
ディレクトリです。App Engine Maven プラグインによって、JAR アーティファクトとこの app.yaml
ファイルを含む適切な target/appengine-staging
ディレクトリが作成され、デプロイの準備が整います。
Maven プロジェクトの構造のサンプルを次に示します。
MyDir/
pom.xml
[index.yaml]
[cron.yaml]
[dispatch.yaml]
src/main/
appengine/
app.yaml
java/com.example.mycode/
MyCode.java
プロジェクト ディレクトリに複数の JAR ファイルがある場合や、カスタム エントリポイントを指定する場合は、app.yaml
ファイルの entrypoint
要素で指定する必要があります。
すべての構成要素
この構成ファイルでサポートされるすべての要素の一覧については、app.yaml
リファレンスをご覧ください。