私は、接続されたRDSデータベースをプロビジョニング/アップデートする単一インスタンスのWebサーバーAWS EB環境にコードをデプロイしています。私が展開コードを呼び出す.ebextensionsファイル持っている:同じ展開でAWS Elastic Beanstalkデプロイメントオーダー
---
container_commands:
01deploydb:
command: /var/www/html/php/cli/deploy-db.php
leader_only: true
を、私は/cli/
に戻って一つのディレクトリを展開-をdb.phpファイルを落としました。展開時には、ERROR: [Instance: i-*****] Command failed on instance. Return code: 127 Output: /bin/sh: /var/www/html/php/cli/deploy-db.php: No such file or directory. container_command 01deploydb in .ebextensions/01_db.config failed. For more detail, check /var/log/eb-activity.log using console or EB CLI.
コマンドを含まないバージョンを展開して、コマンドを含む2番目の更新プログラムを展開すると、エラーは発生しません。ただし、同時に呼び出すコマンドとファイルを追加すると、エラーが発生します。同様のシーケンスが、以前は異なるコマンド/ファイルで発生していました。
私の質問です:AWSが環境をどのように更新するかについて文書化された注文/シーケンスがありますか? container_commandsが呼び出される前に私の新しいバージョンが完全に展開されていて(そして.phpファイルがインストールされている)ことが予想されました。
おかげ@Gustaf:あなたは、この(それが唯一しかしリーダーになることはありませんが、あなたは
container_commands:
を通じてこのディレクトリにファイルを置くことができる)のような何かを行うことができます! – Calteran