主机中的浏览器无法看到流浪盒,端口无法正常工作

时间:2012-05-18 07:35:27

标签: http portforwarding vagrant

我已经在我的Window XP中安装了Vagrant,在我的Vagrantfile中我已经安装了:

Vagrant::Config.run do |config|
  # Setup the box
  config.vm.box = "lucid32"
  config.vm.forward_port 80, 8080
  config.vm.network :hostonly, "192.168.10.200"
end

但是当我在浏览器中输入“http://192.168.10.200:8080”时,我看不到我的流浪盒的迹象。

虚拟盒的IP地址是正确的,因为在vbox中,我有:

vagrant@lucid32:~$ ifconfig
....
eth1      Link encap:Ethernet  HWaddr 08:00:27:79:c5:4b
          inet addr:192.168.10.200  Bcast:192.168.10.255  Mask:255.255.255.0

似乎没有防火墙问题,因为如果我输入

vagrant@lucid32:~$ curl 'http://google.com'

它工作正常。

我看过Vagrant's port forwarding not working 并试过:

vagrant@lucid32:~$ curl 'http://localhost:80'
curl: (7) couldn't connect to host

以及

vagrant@lucid32:~$ curl 'http://localhost:8080'
curl: (7) couldn't connect to host

所以,看起来端口前进不起作用......

如果你知道我能做什么,我可以从主机浏览器访问我的vbox,你能帮帮我吗?

提前致谢

2 个答案:

答案 0 :(得分:5)

如果您刚刚使用此Vagrantfile启动了一个Vagrant框,那么只有一个空的Ubuntu Lucid,它还没有运行任何服务。因此,端口80上没有任何服务,这就是为什么无法从端口80上的框内部或8080上的主机上看到任何内容。

为了让Vagrant机器提供某些服务(例如端口80上的Web服务器),您必须进行一些配置。您可以手动执行,也可以使用与Vagrant的up进程挂钩的Chef或Puppet。

答案 1 :(得分:0)

我有类似的问题。有时使用端口转发2000以下的端口是一个问题。对我有用的是选择2000以上的端口。所以我的vagrantfile现在看起来像:

config.vm.network :forwarded_port, host: 4500, guest: 9000

在我的主机上键入localhost:4500现在工作正常。看起来你是一个老版本的流浪汉,而不是我的,所以你可以编辑你的流浪文件

config.vm.forward_port 9000, 4500

现在在主机上键入localhost:4500应该可以正常工作。

祝你好运,