2

Windows 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」と入力しても、vagrant ボックスの兆候は見られません。

仮想ボックスの 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 のポート フォワーディングが機能しないことを読んで、次のこと を試しました。

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 にアクセスできるようにするにはどうすればよいかご存知でしたら、教えていただけますか?

前もって感謝します

4

2 に答える 2

5

これで Vagrant ボックスを開始したばかりの場合はVagrantfileまだサービスを実行していない空の Ubuntu Lucid しかありません。したがって、 port80で提供されるものは何もありません。これが、 port のボックス内80または のホスト マシンから何も見えない理由8080です。

Vagrant マシンがいくつかのサービス (ポート上の Web サーバーなど80) を提供するには、いくつかのプロビジョニングを行う必要があります。up手動で、または Vagrant のプロセスにフックされている Chef または Puppet を使用して行うことができます。

于 2012-05-21T17:55:03.550 に答える
0

同様の問題がありました。2000 未満のポートにポート フォワーディングを使用すると問題が発生することがあります。私にとってうまくいったのは、2000を超えるポートを選択することでした。したがって、私のvagrantfileは次のようになります。

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

ホスト マシンで localhost:4500 と入力すると、問題なく動作するようになりました。あなたは私のものよりも古いバージョンの vagrant を使用しているようですので、 vagrant ファイルを次のように編集できます

config.vm.forward_port 9000, 4500

ホスト マシンで localhost:4500 と入力すると、問題なく動作するはずです。

幸運を、

于 2014-02-03T12:47:27.940 に答える