2017-04-21 169 views
1

我有一个可编译的/运行在流浪汉上的弹簧应用程序,并听取localhost:8080(流浪者内部)。Vagrant:Forwarded Ports does not work

这是我Vagrantfile

Vagrant.configure("2") do |config| 
config.vm.box = "ubuntu/xenial64" 
config.vm.network :forwarded_port, guest: 80, host: 9000, host_ip: "127.0.0.1" 
config.vm.provision :shell, path: "bootstrap.sh" 
end 

现在我想通过localhost:9000从主机访问我的Spring的应用程序。

无论如何forwarded_port线不起作用,我真的不知道为什么?

我在流浪文件中有什么变化?

SOLUTION:

随着Vagrantfile低于它为我工作。

Vagrant.configure("2") do |config| 
config.vm.box = "ubuntu/xenial64" 
config.vm.network "private_network", ip: "192.168.33.10" 
config.vm.provision :shell, path: "bootstrap.sh" 

config.vm.provider "virtualbox" do |v| 
     v.destroy_unused_network_interfaces = true 
     v.memory = 2048 
     v.cpus = 4 
end 
end 

回答

2

,因为应用程序是在localhost听它不工作。

使应用程序在常规界面上侦听。如果不是Vagrant界面,您可能还需要添加guest_ip

config.vm.network :forwarded_port, guest: 80, guest_ip: "xxx.xxx.xxx.xxx", host: 9000, host_ip: "127.0.0.1 
+0

你能更具体吗? ..我是全新的所有这些伪服务器的东西 – SteveOhio

+0

我不能更具体,因为你不是。顾名思义,Localhost仅用于本地连接。 – techraf

+0

所以我必须让spring-app听'guest_ip'? – SteveOhio

0

如果在虚拟机中运行你的春天应用程序的确听其本地端口8080,你想从你的主机访问该应用程序为http://localhost:9000/,然后在你的Vagrantfile行应该是:

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

,即你有一个错字上的来宾指定端口80,而不是8080

你也许并不需要指定诸如host_ip或guest_ip任何其他参数。

+0

我找到了解决方案,并将其添加到我的问题.. thx为您的努力 – SteveOhio