複数のVagrantfileでセットアップ内容をプロジェクトごとに変えるには
今まではVagrantを1つだけ使っていたのですが、同じOSで別セットアップのものが必要になりました。
別ディレクトリーで新しいvagrantfileを作成し、vagrant upをすると、2台目の内容がなぜか1台目と2台目の両方に適応されてしまいます。
【ホスト構成】
localnginx.dev 192.168.33.10
localapache.dev 192.168.33.11
【1台目のvagrantfile】
Vagrant.configure(2) do |config|
config.ssh.insert_key = false
config.vm.define :"localnginx.dev" do |web_config|
web_config.vm.box = "bento/centos-6.8"
web_config.vm.network "private_network", ip: "192.168.33.10"
web_config.vm.synced_folder "../home/sample1", "/home/sample1/htdocs", :nfs => { :mount_options => ["dmode=777","fmode=644"] }
web_config.vm.provision "ansible" do |ansible|
ansible.playbook = "site.yml"
ansible.inventory_path = "hosts/development"
ansible.limit = "all"
end
web_config.vm.provider "virtualbox" do |vb|
vb.name = "localnginx.dev"
vb.memory = "2048"
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
end
end
end
【2台目のvagrantfile】
Vagrant.configure(2) do |config|
config.ssh.insert_key = false
config.vm.define :"localapache.dev" do |web_config|
web_config.vm.box = "bento/centos-6.8"
web_config.vm.network "private_network", ip: "192.168.33.11"
web_config.vm.synced_folder "../home/sample2", "/home/sample2/htdocs", :nfs => { :mount_options => ["dmode=777","fmode=644"] }
web_config.vm.provision "ansible" do |ansible|
ansible.playbook = "site.yml"
ansible.inventory_path = "hosts/development"
ansible.limit = "all"
end
web_config.vm.provider "virtualbox" do |vb|
vb.name = "localapache.dev"
vb.memory = "2048"
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
end
end
end
【前提】
* Vagrantfileやマウントさせるディレクトリー、ansible-playbookの中身は別物です。
* 同じOS(CentOS 6.8)でも、プロジェクトごとに全く異なったセットアップの環境を作りたいです。
【問題点】
* 2台目synced_folderが1台目にも適応されてしまう
* 2台目のansible-playbookに登録されているタスクが1台目にも適応されてしまう
こちらの原因をしばらく探してみたのですが、なかなか見当たらないので、
アドバイス頂けると大変助かります。宜しくお願い致します。
-----解決--------------------------------------------------
こちらの件は自己解決しました。原因は、前回のvagrant設定をディレクトリーごとコピーしていて、
その中の.vagrantディレクトリーもコピーされていたことが原因でした。