Vagrant入門 – Vagrant の共有フォルダ機能 (Synced Folder)

投稿者 : OSCA

 本稿では、ホスト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 機能の概要について解説しました。 特別な設定をしなくても仮想マシーンとのファイル共有ができることはとても嬉しいですね、ぜひ便利に利用してください。

Vagrant入門へ戻る

著者 : OSCA

OSCA

 初級WEBエンジニアです。最近は Android, iOS, WEBアプリの作成に力を入れています。 個人として何か一つでも世の中の多くの人に使ってもらえるアプリを作ろうと日々奮闘中です。
@engineer_osca