这是使用刀直接引导 Vagrant VM 的另一种方法:为什么不使用内置的 Vagrant Chef 配置器呢?这样做时,您不需要在 Vagrant VM 上安装 Chef,但您仍然可以使用 Chef 配置它们。
在你的 Vagrant.configure("2") 下做 |config| 行,你可以像这样添加它:
config.omnibus.chef_version = :latest
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.ssh.shell = "bash -c 'BASH_ENV=/etc/profile exec bash'"
config.omnibus.chef_version = :latest
config.vm.define :oak do |oak|
oak.vm.box = "hashicorp/precise64"
oak.vm.provision "chef_client" do |client|
client.chef_server_url = "https://my-chef-server:443"
client.validation_key_path = "/home/me/.chef/chef-validator.pem"
client.add_role "base"
client.add_recipe "users"
client.add_recipe "nginx"
client.environment = "development"
end
end
config.vm.define :maple do |maple|
...