スキップしてコンテンツを表示

Elastic Beanstalk 環境をカスタマイズするために、.ebextensions をどのように使用すればよいですか?

所要時間2分
0

.ebextensions を使用して、AWS Elastic Beanstalk 環境をカスタマイズしたいと考えています。

解決策

**注: ** AWS コマンドラインインターフェイス (AWS CLI)コマンドの実行時にエラーが発生した場合は、 AWS CLI のエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。

.ebextensions ディレクトリを設定する

次の手順を実行します:

  1. アプリケーションバンドルのルートに、.ebextensions という名前のディレクトリを作成します。
  2. 設定ファイルをこのディレクトリに保存します。アプリケーションのソースバンドルは次の例のようになります:
    ~/workspace/my-application/
    |-- .ebextensions
    |   |-- 01-server-configuration.config
    |   `-- 02-asg-healthcheck.config
    |-- index.php
    `-- styles.css
    注: ** Elastic Beanstalk は、 .ebextensions ** ディレクトリの設定ファイルをアルファベット順に処理します。ファイル名に番号付きのプレフィックスを使用して、構成の順序を制御します。

Elastic Beanstalk 環境をカスタマイズする

環境の構成を変更するには、option_settings キーを使用します。

Elastic Beanstalk コンソールまたは Elastic Beanstalk Command Line Interface(EB CLI)を使用して環境を作成または更新すると、これらのクライアントによって 推奨値 が適用されます。推奨値は、API レベルで直接設定され、最大の優先順位が割り当てられます。option_settings を使用して構成を変更することはできません。

優先順位ルールにより、** option\ _settings ** の変更が環境設定に適用されない場合があります。環境の作成時に Elastic Beanstalk が環境に直接適用した設定を削除するには、Elastic Beanstalk API の UpdateEnvironment オペレーションを使用します。または、次の update-environment AWS CLI コマンドを使用することもできます:

aws elasticbeanstalk update-environment --application-name applicationname --environment-name environmentnamename --options-to-remove Namespace=aws:elasticbeanstalk:application:environment,OptionName==yourpropertyname

**注: ** applicationname をご使用のアプリケーション名に、environmentname をご使用の環境名に、yourpropertyname をプロパティ名に置き換えてください。

option_settings を使用して設定を変更できない場合は、リソース キーを使用して Elastic Beanstalk 環境の リソースをカスタマイズ してください。

Elastic Beanstalk は、設定ファイルで定義したリソースを、環境を起動する AWS CloudFormation テンプレートに追加します。CloudFormation テンプレートは、すべての CloudFormation リソースタイプをサポートしています。論理リソース名の詳細については、Elastic Beanstalk が環境に作成するリソースを変更するを参照してください。

構成ファイルの拡張子は .config であり、形式は YAML または JSON である必要があります。

設定ファイルが YAML 形式を使用している場合は、ファイルのインデントに一貫したスペースを使用していることを確認してください。インデントが正しくないと、デプロイが失敗する可能性があります。

キーを使用して Linux サーバーや Windows サーバーのソフトウェアをカスタマイズします。各キーは、各設定ファイルで 1 回だけ使用してください。

Amazon Linux 2 と Amazon Linux 2023 をベースとするプラットフォームでは、インスタンスのプロビジョニング中に ** Buildfile 、 Procfile **、および プラットフォームフック を使用してカスタムコードを実行するのがベストプラクティスです。設定ファイルでは、コマンド と container\ _commands を引き続き使用できます。詳細については、プラットフォームフックを使用して Elastic Beanstalk 環境をカスタマイズする方法?」を参照してください。

Elastic Beanstalk にアプリケーションをデプロイする際は、 .ebextensions 設定ファイルを使用して、Amazon Elastic Compute Cloud(Amazon EC2)インスタンスをカスタマイズします。構成ファイルのサンプルについては、GitHub のウェブサイトで elastic-beanstalk-samples を参照してください。

.ebextensions を使用して環境の HTTPS を設定する方法については、Elastic Beanstalk 環境の HTTPS を設定するを参照してください。

カスタム設定をアプリケーションに適用する

設定ファイルを含むアプリケーションソースバンドルを作成し、 その後、 更新したアプリケーションをデプロイします。

注: ** ZIP ファイルの作成時に、ファイルアーカイブツールに隠しディレクトリが含まれていない場合があります。ファイルブラウザには、ピリオドで始まるフォルダ (例: ** .ebextensions) が表示されない場合があります。これらのフォルダを表示させるには、アプリケーションソースバンドルを作成する際、.ebextensions フォルダをアプリケーションバンドルのルートに配置します。

.ebextensions の設定に関する問題のトラブルシューティング

デプロイ後に Elastic Beanstalk ** が.ebextensions ** 設定を適用しない場合は、以下のアクションを実行してください。

**ディレクトリの場所とファイル拡張子を確認してください **

Elastic Beanstalk コンソールで最近の環境イベントを確認してください。Elastic Beanstalk からのデプロイおよび設定メッセージは、** イベント ページに表示されます。ソースバンドルのルートに.ebextensions ** ディレクトリを設定し、設定ファイルに.config ファイル拡張子を使用していることを確認します。

**デプロイログを確認する **

Amazon EC2 インスタンスに接続し、設定ファイルに関連するエラー、起動失敗、またはデプロイの問題がないか、** /var/log/eb-engine.log ** を確認します。デプロイ結果については、/var/log/cfn-init.log と /var/log/cfn-init-cmd.log も確認してください。

デプロイログを表示するには、コンソールでのデプロイログの表示を参照してください。

ログを取得するには、 Elastic Beanstalk 環境の Amazon EC2 インスタンスからログ を表示するのインスタンスログを取得するを参照してください。

**最近の構成変更を元に戻す **

**.ebextensions ** 設定の変更によりデプロイが失敗した場合は、アプリケーションバージョンを再デプロイしてください。

関連情報

Elastic Beanstalk 環境のトラブルシューティング

AWS公式更新しました 1ヶ月前
1コメント

This article was reviewed and updated on 2026-08-28.

エキスパート

応答済み 1ヶ月前

関連するコンテンツ