AWS Elastic Beanstalk 環境をカスタマイズして、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスでファイルの作成、パッケージのインストール、コマンドの実行をしたいと考えています。
解決策
**注:**AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI エラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用しているようにしてください。
.ebextensions ディレクトリをセットアップする
.ebextensions ディレクトリをセットアップするには、次の手順を実行します。
- アプリケーションバンドルのルートに、.ebextensions という名前の隠しディレクトリを作成します。
- 設定ファイルを..ebextensions ディレクトリに保存します。アプリケーションのソースバンドルは次の例のようになります。
~/workspace/my-application/
|-- .ebextensions
| |-- 01-server-configuration.config
| `-- 02-asg-healthcheck.config
|-- index.php
`-- styles.css
Elastic Beanstalk 環境をカスタマイズする
環境をカスタマイズするには、次のベストプラクティスを確認します。
- option_settings キーを使用して環境設定を変更します。すべての環境の一般的なオプションとプラットフォーム固有のオプションから選択できます。
注: 環境を Elastic Beanstalk API で作成または更新すると、クライアントでは推奨値を適用します。推奨値はそのまま API レベルで設定され、優先順位が最も高くなります。option_settings を使用して設定を変更することはできません。
- 優先順位ルールにより、option_settings の変更を環境設定に適用するのは阻止されます。環境の作成時にそのまま適用した設定を削除するには、update-environment コマンドを --options-to-remove フラグ付きで実行します。また、Elastic Beanstalk API を使用してコマンドを実行することで更新を行うこともできます。
- 目的のリソース設定にオプション設定がない場合は、Resources キーを使用して Elastic Beanstalk 環境でリソースをカスタマイズします。
注: 設定ファイルで定義したリソースは、環境を起動するのに使用される AWS CloudFormation テンプレートに追加されます。CloudFormation テンプレートでは、CloudFormation のすべてのリソースタイプをサポートします。論理リソース名の詳細については、「Elastic Beanstalk が環境用に作成するリソースの変更」を参照してください。
- キーを使用して Linux サーバーや Windows サーバーのソフトウェアをカスタマイズします。
- 設定ファイルのサンプルについては、GitHub ウェブサイトにある elastic-beanstalk-samples を参照してください。
カスタム設定をアプリケーションに適用する
カスタム設定をアプリケーションに適用するには、次の手順を実行します。
- 設定ファイルを含むアプリケーションソースバンドルを作成します。
注: .ebextensions のようにピリオドで始まるフォルダは、ファイルブラウザで非表示にできます。これらのフォルダを表示したままにするには、アプリケーションソースバンドルを作成するときに、アプリケーションバンドルのルートに .ebextensions フォルダを含めてください。
- 更新した Elastic Beanstalk アプリケーションをデプロイします。
関連情報
オプション設定