本稿では、ホストOSとゲストOSの間でファイルを共有するための Vagrant の共有フォルダ機能「Synced Folder」について解説します。
Synced Folders とは?
仮想マシーンを起動して作業をしていると、ホストOSとゲストOSの間でファイルを共有したい場合があると思います。 Vagrant では、ホストOSとゲストOSの間でファイルの共有する機能を持っており、その機能を「Synced Folders」と呼んでいます。
本来ゲストOSにファイルを送りたい場合、SCP や FTP などを利用してファイルを転送していたことを考えると、ホストOSとゲストOSの間で共有されたフォルダがあることはとても画期的で便利です。
Synced Folders の使い方
Vagrant のデフォルトで、ホストOSとゲストOSとの間で自動的に共有フォルダが割当てられます。ホストOS側は Vagrant の仮想マシーンを作成したディレクトリ(仮想マシーンの設定ファイル「Vagrantfile」が設置されているフォルダ)、ゲストOS側には /vagrant が共有フォルダとしてマウントされ、リアルタイムでファイルを共有することができます。
共有フォルダの変更
もちろん共有フォルダのパスの変更も可能です。 詳細な設定方法は、別稿「Vagrantにおける仮想マシンの設定 (config.vm)」を参考にして頂きたいですが、次のような設定でゲストOSとホストOS側のパスを変更することができます。
Vagrant.configure("2") do |config|
...
config.vm.synced_folder "./data", "/vagrant"
...
end
おわりに
本稿では Vagrant の Synced Folder 機能の概要について解説しました。 特別な設定をしなくても仮想マシーンとのファイル共有ができることはとても嬉しいですね、ぜひ便利に利用してください。