Chef-client无法以本地模式

时间:2015-10-23 16:37:20

标签: chef chef-solo cookbook

我是厨师的初学者,希望自动化部署过程。为了测试一个简单的脚本,我已经下载了chefdk。我创建了存储库,烹饪书和收件人。现在,我想运行一个配方,我使用以下命令:

chef-client -z -r 'recipe[example::default]'

只要从../repository/目录中执行,此命令就可以正常工作。但是,当我尝试从该目录外部执行它时,它无法说它无法找到该菜谱。

从文档(实际上没有多大帮助)我发现我们可以在knife.rb文件中配置cookbook路径,但在我的情况下,没有这样的文件(因为我只是试图运行)当地的厨师客户)。有没有其他方法可以在运行时传递cookbook路径,以及chef-client命令?

1 个答案:

答案 0 :(得分:0)

  1. 厨师可以自动查找食谱库 - 如果您将从食谱目录中运行命令
  2. 如果您不想每次都进入此目录,可以更改配置文件中的COOKBOOK_PATH设置。如果您没有此文件,则必须创建它并运行命令:

    chef-client --local -c PATH_TO_FILE

    可在此处更改的设置列表HERE。对您而言最重要的是chef_repo_pathcookbook_path

  3. 希望这会有所帮助:)