Vagrant
Vagrantfile

Vagrantで共有フォルダを設定してみる

More than 1 year has passed since last update.


概要

VagrantではVagrantfileに一行書くだけでホストマシンとフォルダの共有が出来るということなのでやってみました。

VirtualBoxの設定とmountコマンドを併用して設定するやり方もありますが、Vagrantfileに共有フォルダ設定などを書きたくない場合はそちらを使うといいかと思います。


Vagrantfile

各仮想マシンのVagrantfileの設定に以下のような項目を加えます。

# config.vm.synced_folder {host_path}, {guest_path}, option...

config.vm.synced_folder "./shared", "/home/vagrant/shared", owner: "vagrant", group: "vagrant"


  • host_path : ホストマシンの共有フォルダへのパスです。Vagrantfileからの相対パスが使えます。

  • guest_path : 仮想マシン上でのディレクトリパスを指定します。


Options

オプションに関しては以下の物を複数設定出来る模様です。(公式サイト)

名前

説明

create
boolean
trueの場合、ホストマシンにフォルダが無かった場合作成する。

disabled
boolean
trueの場合、フォルダの同期が無効になります。

group
string
共有フォルダのグループを指定できます。デフォルトはSSHのユーザーです。

mount_options
array
mountコマンドに渡す追加のmountコマンドオプションのリスト。

owner
string
共有フォルダのオーナーを指定できます。デフォルトはSSHのユーザーです。

type
string
フォルダのタイプを指定できます。指定しない場合は最適なタイプを選んでくれるようです。(mountコマンドの-tオプション相当)

id
string
mountポイントの名前を指定できます。デフォルトはディレクトリパスのスラッシュをアンダーバーに変換した物


VM再起動

これで再度vagrant up, vagrant reloadを行うと設定が反映された状態で仮想マシンが起動します。