Vagrant ゲストマシン内で apache2 を実行しています。
以下は私のVagrantファイルです。
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/lunar64"
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.provider "virtualbox" do |vb|
vb.memory = "1024"
end
config.vm.provision "ansible_local" do |ansible|
ansible.playbook = "provisioning/playbook.yml"
end
end
私のプレイブックprovisioning/playbook.yml
は以下の通りです -
---
- hosts: all
become: true
tasks:
- name: make sure we can connect
ping:
- name: update the apt cache
apt: update_cache=yes cache_valid_time=3600
- name: ensure apache2 is installed and up to date
apt: name=apache2 state=latest
- name: write the apache config file
copy: src=templates/apache2/000-default.conf dest=/etc/apache2/sites-available/000-default.conf
notify:
- restart apache2
- name: apache is running (and enable it at boot)
service: name=apache2 state=started enabled=yes
handlers:
- name: restart apache2
service: name=apache2 state=restarted
ここはprovisioning/templates/apache2/000-default.conf
-
<VirtualHost *:80>
#ServerName www.example.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
コマンドvagrant up
とがvagrant provision
正常に動作しています。VagrantゲストOSにログインして実行すると、vagrant ssh
正常curl http://0.0.0.0
に動作します。
しかし、ゲストマシンのIPを使用してホストOSからアクセスしようとすると失敗します -
Vagrant マシン内でサービスに正しくアクセスするにはどうすればよいでしょうか?