メニュー
AWS Elastic Beanstalk
開発者ガイド (API Version 2010-12-01)

プラットフォームフック

Elastic Beanstalk は標準化されたディレクトリ構造をフックに使用します。これはライフサイクルイベント中、および管理オペレーション (環境のインスタンスが起動された、ユーザーがデプロイを開始した、またはユーザーがアプリケーションサーバーの再起動機能を使用した) に応じて実行されるスクリプトです。

フックは次のフォルダーに整理されます。

  • appdeploy — アプリケーションのデプロイ中に実行されるスクリプト。Elastic Beanstalk は、新しいインスタンスが起動されたときと、クライアントが新しいバージョンのデプロイを開始したときに、アプリケーションのデプロイを実行します。

  • configdeploy — クライアントがオンインスタンスのソフトウェア設定に影響する設定の更新 (たとえば、環境プロパティの設定や、Amazon S3 へのログローテーションの有効化など) を行ったときに実行されるスクリプト。

  • restartappserver — クライアントがアプリサーバーの再起動オペレーションを行ったときに実行されるスクリプト。

  • preinit — インスタンスのブートストラップ中に実行されるスクリプト。

  • postinit — インスタンスのブートストラップの後で実行されるスクリプト。

appdeployconfigdeploy、および restartappserver フォルダには preenact、および post サブフォルダがあります。オペレーションの各段階で、pre フォルダーのすべてのスクリプトがアルファベット順に実行され、次に enact フォルダー、post フォルダーの順に実行されます。

インスタンスを起動すると、Elastic Beanstalk は preinitappdeploypostinit の順序で実行します。実行中のインスタンスへのそれ以降のデプロイで、Elastic Beanstalk は appdeploy フックを実行します。ユーザーがインスタンスソフトウェアの設定を更新すると、configdeploy フックが実行されます。restartappserver フックは、ユーザーがアプリケーションサーバーの再起動を開始するときのみ実行されます。

スクリプトでエラーが発生した場合、ゼロ以外のステータスで終了し、stderr に書き込んでオペレーションを失敗させることができます。stderr に書き込むメッセージは、オペレーションが失敗した場合に出力されるイベントに表示されます。Elastic Beanstalk は、この情報をログファイル /var/log/eb-activity.log に取り込み、オペレーションを失敗させたくない場合は 0 を返します。stderr または stdout に書き込むメッセージはデプロイログに表示されますが、オペレーションが失敗しない限り、イベントストリームには表示されません。