[Vagrant][VirtualBox]仮想マシンでHTTPサーバを起動してブラウザからアクセスする方法

ネットワークの設定

Vagrantfileの中でネットワーク設定の記述をします。
Vagrant.configure("2") do |config|
  # ...
  config.vm.network :private_network, ip: "192.168.33.33"
  # ...
end
ここに書くプライベートIPは任意の数字が使えるようです。
いったん覚えやすいように"192.168.33.33"とします。

次に仮想マシンを起動します。
vagrant up
起動したらホストマシン側から仮想マシンあてにpingを飛ばしてみます。
ping 192.168.33.33
ここでpingの応答があればネットワーク設定はOKです。

ポートをあけてWebサーバをたてる

仮想マシンにsshログインします。
vagrant ssh
仮想マシンのiptablesを停止します。これにより全ポートが開きます。
sudo service iptables stop
AWKのワンライナーでHTTPサーバを立てます。ポートは8080番を指定します。
awk 'BEGIN {port="8080";s="/inet/tcp/" port "/0/0";RS=ORS="\r\n";for(;;){if((s |& getline) > 0){printf "HTTP/1.0 200 OK\r\nContent-type: text/html\r\n\r\nHello, World!" |& s;}close(s);}}'
最後に、ホストマシン側のブラウザから
http://192.168.33.33:8080/
にアクセスします。

"Hello, World!"と表示されたら成功です!
うまく動きましたか?
カテゴリ:

人気記事