

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

# マニフェスト環境 (`env.yaml`)
<a name="environment-cfg-manifest"></a>

環境を作成するときに使用する、環境の名前、ソリューションスタックと[環境リンク](environment-cfg-links.md)を設定するために、YAML 形式の環境マニフェストをアプリケーションソースバンドルのルートに含めることができます。

このファイル形式には環境グループのサポートが含まれます。グループを使用するには、マニフェスト内の環境の名前の末尾に \$1記号を指定します。環境を作成あるいは更新する場合、グループ名を `--group-name` (AWS CLI) または `--env-group-suffix` (EB CLI) と指定します。グループの詳細については、「[Elastic Beanstalk 環境のグループを作成および更新する](environment-mgmt-compose.md)」を参照してください。

次の例では、マニフェストが、ウェブサーバー環境に依存しているワーカー環境のコンポーネントへのリンクを持つウェブサーバー環境を定義します。マニフェストは、グループを使用して同じソースバンドルで複数の環境を作成することを許可します。

**`~/myapp/frontend/env.yaml`**

```
AWSConfigurationTemplateVersion: 1.1.0.0
SolutionStack: 64bit Amazon Linux 2015.09 v2.0.6 running Multi-container Docker 1.7.1 (Generic)
OptionSettings:
  aws:elasticbeanstalk:command:
    BatchSize: '30'
    BatchSizeType: Percentage
  aws:elasticbeanstalk:sns:topics:
    Notification Endpoint: me@example.com
  aws:elb:policies:
    ConnectionDrainingEnabled: true
    ConnectionDrainingTimeout: '20'
  aws:elb:loadbalancer:
    CrossZone: true
  aws:elasticbeanstalk:environment:
    ServiceRole: aws-elasticbeanstalk-service-role
  aws:elasticbeanstalk:application:
    Application Healthcheck URL: /
  aws:elasticbeanstalk:healthreporting:system:
    SystemType: enhanced
  aws:autoscaling:launchconfiguration:
    IamInstanceProfile: aws-elasticbeanstalk-ec2-role
    InstanceType: t2.micro
    EC2KeyName: workstation-uswest2
  aws:autoscaling:updatepolicy:rollingupdate:
    RollingUpdateType: Health
    RollingUpdateEnabled: true
Tags:
  Cost Center: WebApp Dev
CName: front-A08G28LG+
EnvironmentName: front+
EnvironmentLinks:
  "WORKERQUEUE" : "worker+"
```

以下のキーがサポートされます。
+ **AWSConfigurationTemplateVersion** (必須) – 設定テンプレートバージョン (1.1.0.0)。

  ```
  AWSConfigurationTemplateVersion: 1.1.0.0
  ```
+ **Platform** – 環境のプラットフォームバージョンの Amazon リソースネーム (ARN)。プラットフォームは、ARN またはソリューションスタック名で指定できます。

  ```
  Platform:
    PlatformArn: arn:aws:elasticbeanstalk:us-east-2::platform/Java 8 running on 64bit Amazon Linux/2.5.0
  ```
+ **SolutionStack** – 環境を作成するために使用される[ソリューションスタック](concepts.platforms.md)の完全名。

  ```
  SolutionStack: 64bit Amazon Linux 2017.03 v2.5.0 running Java 8
  ```
+ **OptionSettings** – 環境に適用する[設定オプション](command-options.md)の設定。たとえば、次のエントリはインスタンスタイプを t2.micro に設定します。

  ```
  OptionSettings:
    aws:autoscaling:launchconfiguration:
      InstanceType: t2.micro
  ```
+ **Tags** – 環境内で作成されたリソースに適用される最大 47 個のタグ。

  ```
  Tags:
    Cost Center: WebApp Dev
  ```
+ **EnvironmentTier** – 作成する環境のタイプ。ウェブサーバーの環境では、このセクションは除外できます（ウェブサーバーがデフォルトとなります）。ワーカー環境では、次を使用します。

  ```
  EnvironmentTier:
    Name: Worker
    Type: SQS/HTTP
  ```
+ **CName** – 環境用の CNAME。グループを有効にするために、名前の末尾に \$1 記号を含めます。

  ```
  CName: front-A08G28LG+
  ```
+ **EnvironmentName** – 作成する環境の名前。グループを有効にするために、名前の末尾に \$1 記号を含めます。

  ```
  EnvironmentName: front+
  ```

  グループが有効化されている場合、環境を作成するときにグループ名を指定する必要があります。Elastic Beanstalk は、環境の名前にハイフンでグループ名を追加します。たとえば、環境の名前が `front+` で、グループ名が `dev` の場合、Elastic Beanstalk は環境の作成時に名前を `front-dev` とします。
+ **EnvironmentLinks** – 依存関係にある変数名と環境の名前のマップ。次の例では、`worker+` 環境を依存化し、`WORKERQUEUE` という変数にリンク情報を保存するように Elastic Beanstalk に指示しています。

  ```
  EnvironmentLinks:
    "WORKERQUEUE" : "worker+"
  ```

  リンク変数の値は、リンクされた環境の種類によって異なります。ウェブサーバー環境の場合、リンクは環境の CNAME となります。ワーカーの環境では、リンクは環境内の Amazon Simple Queue Service (Amazon SQS) キューの名前となります。

[**CName**]、[**EnvironmentName**]、[**EnvironmentLinks**] キーは、[環境グループ](environment-mgmt-compose.md)や[他の環境へのリンク](environment-cfg-links.md)を作成するのに使用できます。これらの機能は、EB CLI AWS CLI または SDK を使用する場合に現在サポートされています。