vagrantの共有フォルダ

猫に粉雪がかかって外は寒そうですが、自分は今、Laravelの何度目かの復習ということで、ドットインストールのLaravel入門コースをやっている。
ドットインストールの初級、中級コース、めちゃくちゃ充実してる。後悔しても遅いが、web仕事を目指し始めた時点で、とっとと着手するべきだった!
Laravel入門コースの開発環境はvagrantで立ち上げた仮想マシンだが、仮想マシン側のvimで編集するよりもMac実機側のエディターを使いたい。
vagrantの共有フォルダ機能を使えば簡単なのだが、前に一度混乱して以来放置していたので、ここできちんと方法を確立してメモしておく。といっても、実に単純なことだった。
ホスト側(mac実機)の ~/MyVagrant/MyCentOS フォルダ(Vagrantファイルがある)と、ゲスト側(仮想マシン) の /vagrant フォルダが同期している。
※ 仮想環境での ~ (ホームフォルダ) つまり /home/vagrant ではなくて、共有フォルダは、ルート直下の /vagrant なので注意! 前に混乱した時は、たぶんこのあたりを勘違いしてたのだろう。
Mac実機側
$ cd MyVagrant/MyCentOS $ ls -a ==>> .vagrant Vagrantfile laravel_lessons
vagrant仮想環境側
[vagrant@localhost ~]$ cd /vagrant/ [vagrant@localhost vagrant]$ ls -a ==>> .vagrant Vagrantfile laravel_lessons
laravelをインストールしたフォルダ(今回は /vagrant/laravel_lessons/myblog )に移動して、phpサーバーを起動。
[vagrant@localhost vagrant]$ cd /vagrant/laravel_lessons/myblog/ [vagrant@localhost vagrant]$ php artisan serve --host 192.168.33.10 --port 8000
こうすると、Mac実機側でのlaravel関連ファイル編集が、ブラウザに反映されるようになる。
さらに、/vagrant フォルダに直にプロジェクトフォルダを配置するのでなくて、workspaceフォルダを間に入れるよう、フォルダ構成を変更した。そして、ホームディレクトリ ~ ( /home/vagrant )から /vagrant/workspace以下に、シンボリックリンクを張った。
[vagrant@localhost myblog]$ ln -s /vagrant/workspace/laravel_lessons/ .
ともかくこれで、brackets でも sublime textでもVisual Code Studioでも好きなエディターで開発が進められる。