

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

# 環境を作成する前に設定オプションを設定する
<a name="environment-configuration-methods-before"></a>

AWS Elastic Beanstalk は、環境内のリソースに適用される設定を変更できる多数の[設定オプション](command-options.md)をサポートしています。これらのオプションの一部には、環境のカスタマイズで上書きされるデフォルト値があります。その他のオプションを設定すると、追加機能を有効化できます。

Elastic Beanstalk では、設定オプションの設定を保存する 2 つの方法をサポートしています。YAML または JSON 形式の設定ファイルは、`.ebextensions` というディレクトリ名でアプリケーションのソースコードに含め、アプリケーションソースバンドルの一部としてデプロイできます。設定ファイルをローカルで作成して管理します。

保存済み設定とは、実行中の環境や JSON オプション ファイルから作成され、Elastic Beanstalk に保存されるテンプレートです。既存の保存済み設定を拡張し、新しい設定を作成することもできます。

**注記**  
設定ファイルや保存済み設定で定義された設定は、環境の作成時または環境の作成後に設定された設定（Elastic Beanstalk コンソールや [EB CLI](eb-cli3.md) に適用される推奨値など）よりも優先順位が低くなります。詳細については、「[優先順位](command-options.md#configuration-options-precedence)」を参照してください。

オプションは JSON ドキュメントでも指定され、EB CLI や で環境を作成または更新する際に Elastic Beanstalk に対して直接設定される場合があります AWS CLIこの方法で Elastic Beanstalk に直接設定されるオプションは、他の方法によるすべてのオプションを上書きします。

使用可能なオプションの詳細なリストについては、 を参照してください[設定オプション](command-options.md)

**Topics**
+ [設定ファイル (`.ebextensions`)](#configuration-options-before-ebextensions)
+ [保存された設定](#configuration-options-before-savedconfig)
+ [JSON ドキュメント](#configuration-options-before-json)
+ [EB CLI 設定](#configuration-options-before-configyml)

## 設定ファイル (`.ebextensions`)
<a name="configuration-options-before-ebextensions"></a>

アプリケーションを機能させるのに必要なオプションを `.ebextensions` を使用して設定し、[優先](command-options.md#configuration-options-precedence)順位の高い設定に上書きされるその他のオプションのデフォルト値を指定します。`.ebextensions` で指定されるオプションは、優先順位が一番低く、他のあらゆるレベルの設定に上書きされます。

設定ファイルを使用するには、プロジェクトのソースコードの最上位に `.ebextensions` という名前のフォルダを作成します。拡張子 `.config` をつけてファイルを追加し、次の方法でオプションを指定します。

```
option_settings:
  - namespace:  namespace
    option_name:  option name
    value:  option value
  - namespace:  namespace
    option_name:  option name
    value:  option value
```

たとえば次の設定ファイルは、アプリケーションのヘルスチェック URL を `/health` に設定します。

`healthcheckurl.config`

```
option_settings:
  - namespace:  aws:elasticbeanstalk:application
    option_name:  Application Healthcheck URL
    value:  /health
```

JSON の場合:

```
{
 "option_settings" :
    [
      {
        "namespace" : "aws:elasticbeanstalk:application",
        "option_name" : "Application Healthcheck URL",
        "value" : "/health"
      }
    ]
}
```

これにより、Elastic Beanstalk 環境の Elastic Load Balancing ロードバランサーが、各 EC2 インスタンスへのパス `/health` への HTTP リクエストを行い、それが正常であるかどうかを判断するように設定します。

**注記**  
YAML は、一貫したインデントに依存します。設定ファイルの例でコンテンツを置き換える際はインデントレベルを一致させ、テキストエディタがインデントにタブ文字ではなくスペースを使用していることを確認します。

`.ebextensions` ディレクトリを[アプリケーションソースバンドル](applications-sourcebundle.md)に含め、新規または既存の Elastic Beanstalk 環境にデプロイします。

設定ファイルは、環境内のサーバーで実行されるソフトウェアやファイルのカスタマイズのために、`option_settings` に加えて複数のセクションをサポートします。詳細については、「」を参照してください[.Ebextensions](ebextensions.md)

## 保存された設定
<a name="configuration-options-before-savedconfig"></a>

保存済み設定を作成し、Elastic Beanstalk コンソール、EB CLI、または による環境の作成時または作成後に既存の環境に適用した設定を保存します AWS CLI保存済み設定はアプリケーションに属し、同アプリケーションの新しいまたは既存の環境に適用される場合があります。

**Topics**
+ [Elastic Beanstalk コンソール](#configuration-options-before-savedconfig-console)
+ [EB CLI](#configuration-options-before-savedconfig-ebcli)
+ [AWS CLI](#configuration-options-before-savedconfig-awscli)

### Elastic Beanstalk コンソール
<a name="configuration-options-before-savedconfig-console"></a>

**保存した設定を作成するには (Elastic Beanstalk コンソール)、**

1. [Elastic Beanstalk コンソール](https://console.aws.amazon.com/elasticbeanstalk)を開き、**リージョン**リストで を選択します AWS リージョン。

1. ナビゲーションペインで、[**環境**] を選択し、リストから環境の名前を選択します。

1. **[Actions]** (アクション)、**[Save Configuration]** (設定の保存) の順に選択します。

1. 画面上のダイアログボックスを使用して、アクションを完了します。

保存された設定は、アプリケーションに関連する名前のフォルダ内の Elastic Beanstalk S3 バケットに格納されます。例えば、us-west-2 リージョンにあるアカウント番号 123456789012 の `my-app` という名前のアプリケーションの設定は、`s3://elasticbeanstalk-us-west-2-123456789012/resources/templates/my-app` にあります。

### EB CLI
<a name="configuration-options-before-savedconfig-ebcli"></a>

[EB CLI](eb-cli3.md) は、[**eb config**](eb3-config.md) で保存済み設定とやりとりするためのサブコマンドも指定します。

**保存済み設定を作成する（EB CLI）**

1. アタッチされた環境の現在の設定を保存する

   ```
   ~/project$ eb config save --cfg my-app-v1
   ```

   EB CLI は、設定を `~/project/.elasticbeanstalk/saved_configs/my-app-v1.cfg.yml` に保存します。

1. 保存済み設定を必要に応じてローカルで変更します。

1. 保存済み設定を S3 にアップロードします。

   ```
   ~/project$ eb config put my-app-v1
   ```

### AWS CLI
<a name="configuration-options-before-savedconfig-awscli"></a>

実行中の環境から、`aws elasticbeanstalk create-configuration-template` で保存済み設定を作成します。

**保存済み設定を作成するには (AWS CLI)**

1. Elastic Beanstalk 環境の環境IDを `describe-environments` で特定します。

   ```
   $ aws elasticbeanstalk describe-environments --environment-name my-env
   {
       "Environments": [
           {
               "ApplicationName": "my-env",
               "EnvironmentName": "my-env",
               "VersionLabel": "89df",
               "Status": "Ready",
               "Description": "Environment created from the EB CLI using \"eb create\"",
               "EnvironmentId": "e-vcghmm2zwk",
               "EndpointURL": "awseb-e-v-AWSEBLoa-1JUM8159RA11M-43V6ZI1194.us-west-2.elb.amazonaws.com",
               "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.2 running Multi-container Docker 1.7.1 (Generic)",
               "CNAME": "my-env-nfptuqaper.elasticbeanstalk.com",
               "Health": "Green",
               "AbortableOperationInProgress": false,
               "Tier": {
                   "Version": " ",
                   "Type": "Standard",
                   "Name": "WebServer"
               },
               "HealthStatus": "Ok",
               "DateUpdated": "2015-10-01T00:24:04.045Z",
               "DateCreated": "2015-09-30T23:27:55.768Z"
           }
       ]
   }
   ```

1. `create-configuration-template` で環境の現在の設定を保存する

   ```
   $ aws elasticbeanstalk create-configuration-template --environment-id e-vcghmm2zwk --application-name my-app --template-name v1
   ```

Elastic Beanstalk は、Amazon S3 の Elastic Beanstalk バケットに設定を保存します。

## JSON ドキュメント
<a name="configuration-options-before-json"></a>

を使用して環境 AWS CLI を作成および更新する場合は、JSON 形式で設定オプションを指定することもできます。JSON の設定ファイルのライブラリは、 を使用して環境を作成および管理する場合 AWS CLI に便利です。

たとえば、次の JSON ドキュメントはアプリケーションのヘルスチェック URL を `/health` に設定します。

**\$1/ebconfigs/healthcheckurl.json**

```
[
  {
    "Namespace": "aws:elasticbeanstalk:application",
    "OptionName": "Application Healthcheck URL",
    "Value": "/health"
  }
]
```

## EB CLI 設定
<a name="configuration-options-before-configyml"></a>

EB CLI では、保存済み設定と **eb config** コマンドによる直接的な環境設定がサポートされるだけでなく、環境内のインスタンスへの SSH アクセスのための Amazon EC2 キーペアを指定するのに使用できる `default_ec2_keyname` という名前の設定ファイルを利用できます。EB CLI は、このオプションを使用して `EC2KeyName` 名前空間に `aws:autoscaling:launchconfiguration` 設定オプションを設定します。

**\$1/workspace/my-app/.elasticbeanstalk/config.yml**

```
branch-defaults:
  master:
    environment: my-env
  develop:
    environment: my-env-dev
deploy:
  artifact: ROOT.war
global:
  application_name: my-app
  default_ec2_keyname: my-keypair
  default_platform: Tomcat 8 Java 8
  default_region: us-west-2
  profile: null
  sc: git
```