我有一个JBoss的Vagrant盒子。我试图转发两个端口。我的Vagrantfile
有以下内容
web.vm.network "forwarded_port", guest: 8080, host: 8080 # jboss
web.vm.network "forwarded_port", guest: 9990, host: 9990 # jboss management console
在vagrant up web
我可以在控制台中看到
==> web: Forwarding ports...
web: 8080 => 8080 (adapter 1)
web: 9990 => 9990 (adapter 1)
当我netstat
端口似乎没问题时
$ sudo netstat -tulpn | grep VirtualBox
[sudo] password for ostraaten:
tcp 0 0 0.0.0.0:9990 0.0.0.0:* LISTEN 21241/VirtualBox
tcp 0 0 127.0.0.1:2222 0.0.0.0:* LISTEN 21241/VirtualBox
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 21241/VirtualBox
当我在Vagrant盒子上做curl -v http://localhost:8080
时,这很好用。我看到了JBoss的东西。
当我在主持人身上curl -v https://localhost:8080
时,会发生其他事情。
$ curl -v http://localhost:8080
* Rebuilt URL to: http://localhost:8080/
* Hostname was NOT found in DNS cache
* Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 8080 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.35.0
> Host: localhost:8080
> Accept: */*
>
* Recv failure: Connection reset by peer
* Closing connection 0
curl: (56) Recv failure: Connection reset by peer
Vagrant框上没有运行防火墙。
首先,转发端口的配置似乎微不足道,但现在看起来还有更多。这应该怎么做?
答案 0 :(得分:0)
我知道这有点太晚了,但我刚刚遇到了类似的问题,但我使用的是Sinatra。经过一番研究,正如Al Jacinto所说,我发现运行你的红宝石应用程序是这样的:
ruby app.rb -o 0.0.0.0
(http://www.sinatrarb.com/intro.html)
应该解决问题,而无需编辑ruby.rb 如果这与某种方式无关,我道歉但我认为它可能会给出一个提示!