开始使用Vagrant进行一些Rails开发。一步一步,所以我首先尝试通过vagrant文件中的Chef配方安装nginx。但是,当我将Vagrantfile
中的nginx版本设置为1.20.0
时,Vagrant似乎无法识别它并继续安装版本1.1.19
。
我将完成所有步骤,以确保我没有遗漏任何东西。
我有一个目录结构:
--vagrant_boxes
--cookbooks
--vagrant_box1
我通过刀从opscode下载了nginx食谱。
knife cookbook site install nginx
这将nginx及其依赖项安装到我的cookbooks
目录中。
然后我在vagrant_box1
vagrant init precise64
并编辑了Vagrant文件以阅读
config.vm.provision :chef_solo do |chef|
chef.cookbooks_path = "../cookbooks"
chef.add_recipe "nginx"
chef.json = { :nginx => { :version => "1.2.0" } }
end
我跑vagrant up
,然后vagrant ssh
。
在Vagrant框中,nginx -v
给了我nginx version: nginx/1.1.19
。这不是我想要的。我想了解Vagrant和厨师,所以非常感谢任何帮助!
答案 0 :(得分:4)
IIRC版本属性仅适用于nginx :: source配方。所以而不是:
chef.add_recipe "nginx"
尝试:
chef.add_recipe "nginx::source"
然后应安装正确的版本