

AWS App Runner は新規顧客に公開されなくなりました。既存のお客様は、通常どおりサービスを引き続き使用できます。詳細については、「[AWS App Runner  可用性の変更](https://docs.aws.amazon.com/apprunner/latest/dg/apprunner-availability-change.html)」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# App Runner 設定ファイルリファレンス
<a name="config-file-ref"></a>

**注記**  
設定ファイルは、[ソースコードに基づくサービス](service-source-code.md)にのみ適用されます。[イメージベースのサービス](service-source-image.md)では設定ファイルは使用できません。

このトピックは、 AWS App Runner 設定ファイルの構文とセマンティクスに関する包括的なリファレンスガイドです。App Runner 設定ファイルの概要については、「」を参照してください[設定ファイルを使用した App Runner サービスオプションの設定](config-file.md)。

App Runner 設定ファイルは YAML ファイルです。に名前を付け`apprunner.yaml`、アプリケーションのリポジトリの[ソースディレクトリ](service-source-code.md#service-source-code.source-directory)に配置します。

## 構造の概要
<a name="config-file-ref.overview"></a>

App Runner 設定ファイルは YAML ファイルです。に名前を付け`apprunner.yaml`、アプリケーションのリポジトリの[ソースディレクトリ](service-source-code.md#service-source-code.source-directory)に配置します。

App Runner 設定ファイルには、次の主要部分が含まれています。
+ *トップセクション* – トップレベルキーが含まれます
+ *ビルドセクション* – ビルドステージを設定します
+ *実行セクション* – ランタイムステージを設定します

## 上部セクション
<a name="config-file-ref.top"></a>

ファイルの上部にあるキーは、ファイルとサービスランタイムに関する一般的な情報を提供します。次のキーを使用できます。
+ `version` – *必須。*App Runner 設定ファイルのバージョン。最新バージョンを使用するのが理想的です。

  **[Syntax]** (構文)

  ```
  version: {{version}}
  ```  
**Example**  

  ```
  version: 1.0
  ```
+ `runtime` – *必須。*アプリケーションが使用するランタイムの名前。App Runner が提供するさまざまなプログラミングプラットフォームで使用可能なランタイムについては、「」を参照してください[ソースコードに基づく App Runner サービス](service-source-code.md)。
**注記**  
 マネージドランタイムの命名規則は {{<language-name><major-version>}} です。

  **[Syntax]** (構文)

  ```
  runtime: {{runtime-name}}
  ```  
**Example**  

  ```
  runtime: python3
  ```

## ビルドセクション
<a name="config-file-ref.build"></a>

ビルドセクションでは、App Runner サービスデプロイのビルドステージを設定します。ビルドコマンドと環境変数を指定できます。ビルドコマンドが必要です。

セクションは `build:`キーで始まり、次のサブキーがあります。
+ `commands` – *必須。*さまざまなビルドフェーズで App Runner が実行するコマンドを指定します。次のサブキーが含まれます。
  + `pre-build` – *オプション。*ビルドの前に App Runner が実行するコマンド。たとえば、**npm**依存関係をインストールしたり、ライブラリをテストしたりします。
  + `build` – *必須。*App Runner がアプリケーションを構築するために実行するコマンド。たとえば、 を使用します**pipenv**。
  + `post-build` – *オプション。*App Runner がビルド後に実行するコマンド。例えば、Maven を使用してビルドアーティファクトを JAR または WAR ファイルにパッケージ化したり、テストを実行したりできます。

  **[Syntax]** (構文)

  ```
  build:
    commands:
      pre-build:
        - {{command}}
        - {{…}}
      build:
        - {{command}}
        - {{…}}
      post-build:
        - {{command}}
        - {{…}}
  ```  
**Example**  

  ```
  build:
    commands:
      pre-build:
        - yum install openssl
      build:
        - pip install -r requirements.txt
      post-build:
        - python manage.py test
  ```
+ `env` – *オプション。*ビルドステージのカスタム環境変数を指定します。名前と値のスカラーマッピングとして定義されます。これらの変数は、ビルドコマンドで名前で参照できます。
**注記**  
この設定ファイルには、2 つの異なる場所に 2 つの異なる`env`エントリがあります。1 つのセットは**ビルド**セクションにあり、もう 1 つのセットは**実行**セクションにあります。  
ビルドセクションの `env`セットは、*ビルドプロセス*中に `pre-build`、`build``post-build`、、および `pre-run` コマンドで参照できます。  
***重要 ***- `pre-run` コマンドは、ビルドセクションで定義されている環境変数にのみアクセスできるにもかかわらず、このファイルの Run セクションにあることに注意してください。
Run セクションの `env`セットは、ランタイム環境の `run` コマンドで参照できます。

  **[Syntax]** (構文)

  ```
  build:
    env:
      - name: {{name1}}
        value: {{value1}}
      - name: {{name2}}
        value: {{value2}}
      - {{…}}
  ```  
**Example**  

  ```
  build:
    env:
      - name: DJANGO_SETTINGS_MODULE
        value: "django_apprunner.settings"
      - name: MY_VAR_EXAMPLE
        value: "example"
  ```

## 実行セクション
<a name="config-file-ref.run"></a>

実行セクションでは、App Runner アプリケーションデプロイのコンテナ実行ステージを設定します。ランタイムバージョン、実行前コマンド (改訂された形式のみ）、スタートコマンド、ネットワークポート、環境変数を指定できます。

セクションは `run:`キーで始まり、次のサブキーがあります。
+ `runtime-version` – *オプション。*App Runner サービス用にロックするランタイムバージョンを指定します。

  デフォルトでは、メジャーバージョンのみがロックされます。App Runner は、デプロイまたはサービスの更新ごとにランタイムで使用できる最新のマイナーバージョンとパッチバージョンを使用します。メジャーバージョンとマイナーバージョンを指定すると、どちらもロックされ、App Runner はパッチバージョンのみを更新します。メジャーバージョン、マイナーバージョン、パッチバージョンを指定すると、サービスは特定のランタイムバージョンでロックされ、App Runner によって更新されることはありません。

  **[Syntax]** (構文)

  ```
  run:
    runtime-version: {{major[.minor[.patch]]}}
  ```
**注記**  
一部のプラットフォームのランタイムには、異なるバージョンコンポーネントがあります。詳細については、特定のプラットフォームトピックを参照してください。  
**Example**  

  ```
  runtime: python3
  run:
    runtime-version: 3.7
  ```
+ `pre-run` – *オプション。* ***[ビルド使用法の改訂](service-source-code.md#service-source-code.build-detail)のみ***。ビルドイメージから実行イメージにアプリケーションをコピーした後に App Runner が実行するコマンドを指定します。ここにコマンドを入力して、 `/app` ディレクトリの外部で実行イメージを変更できます。たとえば、 `/app` ディレクトリの外部にある追加のグローバル依存関係をインストールする必要がある場合は、このサブセクションに必要なコマンドを入力します。App Runner ビルドプロセスの詳細については、「」を参照してください[マネージドランタイムバージョンと App Runner ビルド](service-source-code.md#service-source-code.build-detail)。
**注記**  
***重要 ***– `pre-run` コマンドは Run セクションにリストされていますが、この設定ファイルの Build セクションで定義されている環境変数のみを参照できます。この実行セクションで定義されている環境変数を参照することはできません。
`pre-run` パラメータは、改訂された App Runner ビルドでのみサポートされます。アプリケーションが元の App Runner ビルドでサポートされているランタイムバージョンを使用している場合は、このパラメータを設定ファイルに挿入しないでください。詳細については、「[マネージドランタイムバージョンと App Runner ビルド](service-source-code.md#service-source-code.build-detail)」を参照してください。

  **[Syntax]** (構文)

  ```
  run:
    pre-run:
        - {{command}}
        - {{…}}
  ```
+ `command` – *必須。*App Runner がアプリケーションビルドの完了後にアプリケーションを実行するために使用するコマンド。

  **[Syntax]** (構文)

  ```
  run:
    command: {{command}}
  ```
+ `network` – *オプション。*アプリケーションがリッスンするポートを指定します。この情報には以下が含まれます。
  + `port` – *オプション。*指定した場合、これはアプリケーションがリッスンするポート番号です。デフォルト: `8080`。
  + `env` – *オプション。*指定した場合、App Runner はデフォルトの環境変数 で同じポート番号を渡す (代わりに) ことに加えて、この環境変数のコンテナにポート番号を渡します`PORT`。つまり、 を指定すると`env`、App Runner は 2 つの環境変数でポート番号を渡します。

  **[Syntax]** (構文)

  ```
  run:
    network:
      port: {{port-number}}
      env: {{env-variable-name}}
  ```  
**Example**  

  ```
  run:
    network:
      port: 8000
      env: MY_APP_PORT
  ```
+ `env` – *オプション。*実行ステージのカスタム環境変数の定義。名前と値のスカラーマッピングとして定義されます。ランタイム環境では、これらの変数を名前で参照できます。
**注記**  
この設定ファイルには、2 つの異なる場所に 2 つの異なる`env`エントリがあります。1 つのセットは**ビルド**セクションにあり、もう 1 つのセットは**実行**セクションにあります。  
ビルドセクションの `env`セットは、*ビルドプロセス*中に `pre-build`、`build``post-build`、、および `pre-run` コマンドで参照できます。  
***重要 ***- `pre-run` コマンドは、ビルドセクションで定義されている環境変数にのみアクセスできるにもかかわらず、このファイルの Run セクションにあることに注意してください。
Run セクションの `env`セットは、ランタイム環境の `run` コマンドで参照できます。

  **[Syntax]** (構文)

  ```
  run:
    env:
      - name: {{name1}}
        value: {{value1}}
      - name: {{name2}}
        value: {{value2}}   
    secrets:
      - name: {{name1}}
        value-from: {{arn:aws:secretsmanager:region:aws_account_id:secret:secret-id}}
      - name: {{name2}}
        value-from: {{arn:aws:ssm:region:aws_account_id:parameter/parameter-name}}
      - {{…}}
  ```  
**Example**  

  ```
  run:
    env:
      - name: MY_VAR_EXAMPLE
        value: "example"
    secrets:
      - name: my-secret
        value-from: "arn:aws:secretsmanager:us-east-1:123456789012:secret:testingstackAppRunnerConstr-kJFXde2ULKbT-S7t8xR:username::"
      - name: my-parameter
        value-from: "arn:aws:ssm:us-east-1:123456789012:parameter/parameter-name"
      - name: my-parameter-only-name
        value-from: "parameter-name"
  ```