コードベースはPHP 5.5を使用しており、AWS Opsworksにデプロイしたいと考えていますが、PHP App Serverレイヤーを選択すると、PHP 5.3。
私が望んでいたのは、デフォルトのPHP App Serverレイヤーを使用して、OSパッケージとしてphp55
php55-cli
とphp-mcrypt
を指定できることです-
しかし、私は以下のログになってしまいます。
私の実際の目標はこれです。
したがって、ここでの助けをいただければ幸いです。
[2014-04-07T04:37:58+00:00] INFO: execute[Clean up] ran successfully
[2014-04-07T04:37:58+00:00] INFO: Processing package[php-mcrypt] action upgrade (dependencies::default line 14)
[2014-04-07T04:37:58+00:00] INFO: Processing package[php55] action upgrade (dependencies::default line 14)
[2014-04-07T04:37:58+00:00] INFO: package[php55] installing php55-5.5.7-1.65.amzn1 from amzn-updates repository
================================================================================
Error executing action `upgrade` on resource 'package[php55]'
================================================================================
Chef::Exceptions::Exec
----------------------
returned 1, expected 0
Resource Declaration:
---------------------
# In /var/lib/aws/opsworks/cache/cookbooks/dependencies/recipes/default.rb
14: package rpm do
15: action :upgrade
16: version(version)
17: end
18: end
Compiled Resource:
------------------
# Declared in /var/lib/aws/opsworks/cache/cookbooks/dependencies/recipes/default.rb:14:in `block in from_file'
package("php55") do
action [:upgrade]
retries 0
retry_delay 2
package_name "php55"
version "5.5.7-1.65.amzn1"
cookbook_name "dependencies"
recipe_name "default"
end
この場合、 カスタムクックブック を使用する必要があります。
インスタンスの作成中に、カスタムChefクックブックがデフォルトの AWS Chefクックブック にマージされ、アプリケーションをデプロイするために必要な操作を制御できます。
PHP AppServerのデフォルトのAWSChefレシピを変更するか、カスタムレイヤーを作成して、ほとんどすべてを制御することもできます。