概要
本稿では Vagrant で VirtualBox 仮想マシンを作成する際に、仮想マシンの設定を変更する記述について解説します。
設定項目
Vagrant において、仮想マシンの詳細な設定は Vagrantfile に記述します。 Vagrantfile で仮想マシンに対して設定できることは、主に以下のようなことがあります。
変数名 | 説明 |
---|---|
config.vm.box | 仮想マシンで利用するBOX名 |
config.vm.box_url | 仮想マシンで利用するBOXのURL |
config.vm.hostname | 仮想マシンに設定するホスト名 |
config.vm.provider | 仮想マシンを操作するのに利用するプロバイダー名 |
config.vm.provision | 仮想マシン作成時のプロビジョニング方法 |
config.vm.synced_folder | ホストとゲストとの間で共有するフォルダ |
それぞれに関して、次で代表的な設定をみていきましょう。
BOXの指定
仮想マシンのもとなるBOXを指定するための記述が config.vm.box です。 Vagrant Cloud の Box のページ で公開されている Box の名前を指定します。 指定した名前のBoxをローカルで持っていればそれを利用しますし、もしローカルに持っていなければクラウドから取得してくれます。 次の例は Box に Ubuntu 16.04 を指定した例です。
Vagrant.configure("2") do |config|
...
config.vm.box = "ubuntu/xenial64"
...
end
ホスト名の設定
作成する仮想マシンのホスト名を変更したい場合には、config.vm.hostname を設定します。 次の例では「myhost」というホスト名になるように設定しています。
Vagrant.configure("2") do |config|
...
config.vm.hostname = "myhost"
...
end
共有フォルダの設定
ホストとゲストの間での共有するフォルダを設定するには config.vm.synced_folder を設定します。 一番簡単な設定の書式は次のようになっています。
config.vm.synced_folder "ホスト側のPATH", "ゲスト側のPATH"
Vagrant デフォルトの設定は、次のように記述とイコールです。 (PATHの指定に相対パスが利用できるため、ホスト側のPATHは空文字でカレントディレクトリを指定しています。)
Vagrant.configure("2") do |config|
...
config.vm.synced_folder "", "/vagrant"
...
end
おわりに
本稿では Vagrant の仮想マシンの設定を行う記述について解説しました。