流浪者盒子连接?

时间:2014-11-24 17:55:45

标签: vagrant vagrantfile

这是我的流浪盒配置设置:

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  box_version = "0.0.1"

  config.vm.box = "Ubuntu precise 64 VirtualBox"
  config.vm.box_url = "http://files.vagrantup.com/precise64.box"
  config.vm.network "private_network", ip: "192.168.20.4"
  config.vm.synced_folder "wordpress", "/var/www/", type: "nfs", mount_options: ['rw', 'vers=3', 'tcp', 'fsc']
  config.vm.network "forwarded_port",  guest: 80,   host: 9090

  config.ssh.forward_agent = true

  config.vm.provider(:virtualbox) do |vb|
    vb.customize [
      "modifyvm", :id,
      "--memory", "2048",
      "--cpus",   "4"
    ]
  end

end

有两个框具有完全相同的配置,唯一的区别是host:选项。这里的一个说9090,另一个说8080。

问题是,我开始一个,另一个开始了。我也停止了其他一次停止。我没有收到错误说明端口正在使用,实际上它们都启动并且在启动和/或停止时都关闭。

我最初设置了8080一个来做WordPress开发。我需要为不同的WP项目使用相同的框,所以我只是复制了文件夹,并在复制的文件夹中删除了.vagrant文​​件夹并重新运行vagrant,认为它们将是单独的框。

不,同样的问题,当一个人开始另一个开始,当一个人关闭另一个也开始。它们是同一个盒子。

我需要更改哪些内容不同,但使用相同的操作系统?

1 个答案:

答案 0 :(得分:0)

如果没有为每个不同的Vagrantfile定义单独的名称,VirtualBox可能会将它们视为同一个虚拟机。

要解决此问题,您可以通过单独设置vb.name参数来更改每个Vagrant文​​件,如下所示:

config.vm.provider(:virtualbox) do |vb|
  vb.customize [
    "modifyvm", :id,
    "--memory", "2048",
    "--cpus",   "4"
  ]
  vb.name = "box1"
end

为他们命名" box1"," box2",或者用你想要的任何约定。然后,只要Vagrant文​​件位于不同的目录中,您就会拥有独立的VM。

相关问题