Ubuntu 通过Chef solo和Vagrant安装apt包
我需要为Ubuntu安装Ubuntu 通过Chef solo和Vagrant安装apt包,ubuntu,vagrant,chef-infra,Ubuntu,Vagrant,Chef Infra,我需要为Ubuntu安装libgmp3 devpackage 流浪者档案: VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box = "ubuntu/trusty64" config.vm.provision :chef_solo do |chef| chef.cookbooks_path = ["chef/site-cookbooks
libgmp3 dev
package
流浪者档案:
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.provision :chef_solo do |chef|
chef.cookbooks_path = ["chef/site-cookbooks", "cookbooks"]
chef.add_recipe "build-essential"
chef.add_recipe "apt"
end
end
厨师长/现场食谱/系统/食谱/default.rb:
package 'libgmp3-dev' do
action :install
end
但是当我创建虚拟机时,里面没有libgmp3-dev
更新。找到此解决方案:
config.vm.provision :shell, :inline => 'sudo apt-get install libgmp3-dev -y'
但我认为这不是一个很好的解决方案,基于,看起来你的文件中缺少了一个配方
chef.add_recipe "system"
根据数据,你的档案里好像少了一个食谱
chef.add_recipe "system"
如果您正在使用,则需要包括system::install_packages
配方,并设置节点['system']['packages']['install']
属性:
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.provision :chef_solo do |chef|
chef.cookbooks_path = ["chef/site-cookbooks", "cookbooks"]
chef.add_recipe "build-essential"
chef.add_recipe "apt"
chef.add_recipe "system::install_packages"
chef.json = {
"system" => {
"packages" => {
"install" => ["libgmp3-dev"]
}
}
}
end
end
如果您使用自己的系统
食谱和粘贴的软件包
说明,我认为应该足够了。如果您使用,则需要包含系统::安装软件包
配方并设置节点['system']['packages']['install']
属性:
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.provision :chef_solo do |chef|
chef.cookbooks_path = ["chef/site-cookbooks", "cookbooks"]
chef.add_recipe "build-essential"
chef.add_recipe "apt"
chef.add_recipe "system::install_packages"
chef.json = {
"system" => {
"packages" => {
"install" => ["libgmp3-dev"]
}
}
}
end
end
如果您使用自己的
系统
烹饪书和粘贴的包装
说明,我想应该足够了。在我的Vagrant文件中添加了“系统”配方,但没有帮助。我是否还需要添加类似于以下内容的内容system::install_packages
?我想知道厨师超市的系统食谱是否有名字冲突的问题。你能试着重命名网站烹饪书
中的系统
文件夹,然后更新厨师。相应地在你的Vagrant文件中添加\u recipe
行吗?在我的Vagrant文件中添加了“system”recipe,但没有帮助。我是否还需要添加类似于以下内容的内容system::install_packages
?我想知道厨师超市的系统食谱是否有名字冲突的问题。你能试着重命名站点烹饪书
中的系统
文件夹,然后更新厨师。在你的Vagrant文件中相应地添加_recipe
行吗?我绝对同意使用shell provisioner不是安装软件的好方法。现在还不完全清楚您是否有自己的系统
烹饪书,或者您是否正在使用超市提供的烹饪书,但下面的答案应该对您有所帮助。我完全同意使用shell provisioner不是安装软件的很好解决方案。还不完全清楚你是否有自己的系统
菜谱,或者你是否在使用超市的菜谱,但是下面的答案应该对你有所帮助。