在一个项目中很少有流浪盒

时间:2012-01-17 15:03:13

标签: ruby-on-rails vagrant

我想在一个项目中使用2个不同环境的2个流浪盒。我尝试通过以下方式添加2个方框:

vagrant box add first_box http://files.vagrantup.com/lucid32.box
vagrant box add second_box http://files.vagrantup.com/lucid32.box

并通过以下方式在它们之间切换:

vagrant init first_box
vagrant init second_box

但是它们是一样的 - 当我在一个盒子里创建测试文件时,我会在其他框中看到它。 有人可以帮忙吗?

1 个答案:

答案 0 :(得分:6)

我不确定我是否遗漏了这些内容,但在你的情况下,在你的Vagrantfile中描述2台机器是不够的,如下所示:

Vagrant::Config.run do |config|

  config.vm.box = "lucid32"
  config.vm.box_url = "http://files.vagrantup.com/lucid32.box"

  # define box #1
  config.vm.define "node1" do |cfg|
    cfg.vm.network "10.23.5.11"
    cfg.vm.provision :puppet do |puppet|
      puppet.manifests_path = "manifests"
      puppet.manifest_file = "node1.pp"
    end
  end

  # define box #2
  config.vm.define "node2" do |cfg|
    cfg.vm.network "10.23.5.12"
    cfg.vm.provision :puppet do |puppet|
      puppet.manifests_path = "manifests"
      puppet.manifest_file = "node2.pp"
    end
  end

end

现在您可以使用

轻松启动两个节点
vagrant up

或其中一人

vagrant up <nodename>

并使用'halt'命令分别停止它们。您可以使用

进入它们
vagrant ssh <nodename>

或直接在配置的IP地址下。

如果你不需要木偶,只需将这些线留下,否则你可以在清单文件夹中管理不同的条款。