[[Vagrant]]

*説明 [#y4e329f1]
通常はそれぞれのVagrantfileが作成されますが、一つのVagrantfileで複数のVMを管理することが可能です。


**手順 [#q3546723]
 $ mkdir ~/vagrant-common
 $ cd ~/vargant-common
 $ vagrant init
 $ vim Vagrantfile
 ※事前に下記コマンドでadd boxするか、boxを用意して下記Vagrantfileの”config.vm.box_url”で指定することも可能です。
 $ vagrant box add centos6 base.box

**Vagarntfileの中身 [#xac606f4]
下記の例はboxファイルをpackerで作成し、単一のboxファイルで3台分管理する場合の設定です。
 $ vim Vagrantfile
 # -*- mode: ruby -*-
 # vi: set ft=ruby :
 
 Vagrant.configure(2) do |config|
 config.vm.box = "inamuu-vagrant"
 config.vm.box_url = "~/vagrant/packer/centos/box/virtualbox/centos67-nocm-0.1.0.box"
 
 ### 1台目
 config.vm.define "vm1" do | inamuu |
   inamuu.vm.network "private_network", ip: "192.168.33.11"
   #inamuu.vm.synced_folder "../data", "/vagrant_data"
   inamuu.vm.provider "virtualbox" do |vb|
     vb.memory = "1024"
     vb.name = "vm1"
   end
 end
 
 ### 2台目
 config.vm.define "vm2" do | inamuu |
   inamuu.vm.network "private_network", ip: "192.168.33.12"
   #inamuu.vm.synced_folder "../data", "/vagrant_data"
   inamuu.vm.provider "virtualbox" do |vb|
     vb.memory = "1024"
     vb.name = "vm2"
   end
 end
 
 ### 3台目
 config.vm.define "vm3" do | inamuu |
   inamuu.vm.network "private_network", ip: "192.168.33.13"
   #inamuu.vm.synced_folder "../data", "/vagrant_data"
   inamuu.vm.provider "virtualbox" do |vb|
     vb.memory = "1024"
     vb.name = "vm3"
   end
 end
 end

**起動 [#le1e290e]
 $ vagrant up <--引数指定なしで全VMが対象
 $ vagrant up vm1 <--引数でVM名を指定することで単一のVMのみを起動することも可能

**参考URL [#fadd9a5b]
http://qiita.com/zum/items/03da94291ffbc9af2244

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS