我已经在我的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,你能帮帮我吗?
提前致谢
答案 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应该可以正常工作。
祝你好运,