web-dev-qa-db-ja.com

AWS Opsworksに新しいバージョンのphpをインストールするにはどうすればよいですか?

コードベースはPHP 5.5を使用しており、AWS Opsworksにデプロイしたいと考えていますが、PHP App Serverレイヤーを選択すると、PHP 5.3。

私が望んでいたのは、デフォルトのPHP App Serverレイヤーを使用して、OSパッケージとしてphp55php55-cliphp-mcryptを指定できることです- OS Packages

しかし、私は以下のログになってしまいます。

私の実際の目標はこれです。

  1. インストールPHP 5.5、PHP 5.5-cli、PHP-Mcrypt
  2. chmodアプリ/ストレージを(再帰的に)書き込み可能にする
  3. composer.pharをダウンロードする
  4. 実行composerインストール
  5. レイヤーのカスタムjson(mysqlおよびredis設定)のデータを使用して、テンプレートから構成ファイルを作成します。
  6. gitを介してデプロイされた新しいLaravelアプリを指すように、Apache2仮想ホストを作成します

したがって、ここでの助けをいただければ幸いです。

[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
2
Hailwood

この場合、 カスタムクックブック を使用する必要があります。

インスタンスの作成中に、カスタムChefクックブックがデフォルトの AWS Chefクックブック にマージされ、アプリケーションをデプロイするために必要な操作を制御できます。

PHP AppServerのデフォルトのAWSChefレシピを変更するか、カスタムレイヤーを作成して、ほとんどすべてを制御することもできます。

1
Lucas Carvalho