Vagrantで2つのOSを実装する方法
まずはVagrantfileに記述しているコードをみてください。
VAGRANTFILE_API_VERSION = “2”
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = “centos65”config.vm.define :test1 do | test1 |
test1.vm.hostname = “test1”
test1.vm.network :private_network, ip: “192.168.33.10”
endconfig.vm.define :test2 do | test2 |
test2.vm.hostname = “test2”
test2.vm.network :private_network, ip: “192.168.33.20”
endconfig.vm.provider :virtualbox do |vb|
vb.customize [“modifyvm”, :id, “–memory”, “1024”]
vb.customize [“modifyvm”, :id, “–cpus”, 1]
end
end
まず1行目にVAGRANTFILE_API_VERSIONを定義しなければいけないらしい。
この記述を怠るとvagrantがupしてくれない。
[ad#co-1]
次に、通常ならconfig.vm.boxのあとにconfig.vm.providerを記述するが、その前に定義したいvagrantを設定する。
config.vm.define :test1 do | test1 |
test1.vm.hostname = “test1”
test1.vm.network :private_network, ip: “192.168.33.10”
end
test1は見てのとおり、どんな名前でも大丈夫です。
そのvagrantに名前をつける感じです。
private_networkのipはなんでもかまいません。
実際にnginxやtomcatなどを入れた際に、そのipをを打てば接続できます。
vagrantに2つのOSを入れる設定は以上になります。
vb.customizeの部分はそのOSにかける制限などの設定になります。
また、今回立ち上げた2つのOS両方に適用されます。
vagrantの立ち上げ方ですが、単純に
vagrant up
とすれば、2つとも立ち上がってしまいメモリの無駄遣いになります。
(両方立ち上げる必要があればどうぞ。)
その際は、以下のように指定してあげてください
vagrant up test1
sshやhaltの際も同じです。