vagrantのバージョン: 1.7.2
なんか毎回調べてる気がしてたからメモとして残しておく。
ホストマシン環境
OS: MacOSX10.10.3
VirtualBox: 4.3.26
Vagrant環境
OS: CentOS6.5
こんな感じのVagrantfile
Vagrant.configure(2) do |config|
config.vm.box = "centos65"
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.synced_folder "./source", "/var/www/html", create: true, disabled: false, owner: "nginx", group:"nginx", mount_options: ["dmode=775", "fmode=775"]
end
これを元に解説していきます。
できることリスト
-
ホスト上の共有ディレクトリを作成
examplecreate: true
ホスト上にsourceというディレクトリが存在しなかった場合は作成する。デフォルトはfalse
ホストマシン$ tree . └── Vagrantfile $ vagrant up $ tree . ├── Vagrantfile └── source
作成された。
-
共有したくない場合
exampledisabled: true
単純に共有したくないときに設定します。
共有を停止するだけですので、ファイルはホスト側に残っており、消えることはないかと思われます。デフォルトはfalse -
ディレクトリの所有者と所有グループを変更
exampleowner: "nginx", group:"nginx"
上記の例ですと、nginxに所有者と所有グループを割り当てています。
-
所有権限を変更
examplemount_options: ["dmode=775", "fmode=775"]
先ほど変更した所有者と所有グループのディレクトリとファイルにRead & Write権限を付与しています。
-
共有タイプを指定する
exampletype: "nfs"
または
exampletype: "rsync"
ファイル共有にnfsやrsyncを使いたい場合はtypeで指定します。しかし、Vagrantのドキュメントによればデフォルトで最適な共有環境を選んでくれる…らしい。
最後に
この記事ではnfsやrsyncについては触れていません。nfsは強制的にownerとかがホストの状態になる仕様があったから使わかなかったような気がする。共有のパフォーマンスに不満はないしデフォルトでいいかもって思ってるけど、rsyncは使ってみたい。rsync使ったらまたメモ残します。ありがとうございました。