0

我正在尝试在厨师客户端上设置 PHPMyAdmin,但是它在构建时不断出错,并且无法找出原因。

这是我的节点运行列表...

"recipe[networking_basic]",
"recipe[apache2]",
"recipe[chef-php]",
"recipe[chef-php::fpm]",
"recipe[php]",
"recipe[mysql]",
"recipe[phpmyadmin]"

这是我得到的错误......

FATAL: Saving node information to /srv/chef/file_store/failed-run-data.json
ERROR: Exception handlers complete
FATAL: Stacktrace dumped to /srv/chef/file_store/chef-stacktrace.out
FATAL: NameError: Cannot find a resource for php_fpm on ubuntu version 12.04

任何想法为什么会发生这种情况?

4

2 回答 2

1

我得到了食谱作者的回复,建议使用 chef-php 食谱而不是普通的 php 食谱,因为它取代了它。

我使用了 chef-php 食谱,但将其重命名为“php”,然后一切正常。

于 2013-04-03T10:52:58.973 回答
0

您应该至少从 /srv/chef/file_store/chef-stacktrace.out 发布堆栈跟踪,但很可能您正在尝试在其中没有 include_recipe "chef-php" 的食谱中使用提供程序 php_fpm。

相应的代码可能如下所示:

php_fpm 'phpmyadmin' do
  action :add
  user 'phpmyadmin'
  group 'phpmyadmin'
  socket true
  socket_path '/tmp/phpmyadmin.sock'
  socket_perms "0666"
  start_servers 2
  min_spare_servers 2
  max_spare_servers 8
  max_children 8
  terminate_timeout (node['php']['ini_settings']['max_execution_time'].to_i + 20)
  value_overrides({ 
    :error_log => "#{node['php']['fpm_log_dir']}/phpmyadmin.log"
  })
end

但它错过了线

include_recipe "chef-php"

就在这个代码块之前

并且不要忘记在 metadata.rb 中声明对 chef-php 食谱的依赖关系,如:

depends "chef-php"

最后,我建议不要使用官方食谱中的叉子——当你试图维护它时,你会失去更多

于 2013-04-01T20:09:35.510 回答