WEBRADAR

Vagrant内のRailsの起動がバカみたいに遅いとき

Vagrantは簡単にローカルで仮想環境を構築できて、開発環境を閉じ込められて便利なのです。
今回Ruby on Railsで開発しようとの環境を整えていました。

しかし、
rails sを実行してから起動するまでに毎度10数分かかる問題が発生

メモリとかCPUを最大にしてみたり、OSやらミドルウェアやらの設定を見直したり、
なかなか効果がなかったのですが、色々試していたところ
なんとなく、やり直そうとホームディレクトリにダウンロードしたソースでは極普通に起動しました。
どうも共有フォルダが原因っぽい・・・

結論で言うとVagrantの共有フォルダは遅いので、NFSを使いましょうということでした。
https://docs.vagrantup.com/v2/synced-folders/nfs.html

Vagrantfile
config.vm.synced_folder ".", "/vagrant", type: "nfs"

上記の設定を追記します。
もともと”/vagrant”で同期フォルダで設定してあった場合、conflictエラーがでます。
設定を削除するか、別フォルダを設定しましょう。

起動時にパスワードが求められるようになりますが、NFSに設定をした方が遥かに早いです。
“rails s”での起動だけでなく、起動中の動作も早くなりました。

ソースの編集はMac側でできた方が楽だし、万人受けするので共有フォルダにソースを置いていたのですが、
思わぬ落とし穴でした。


起動時のパスワードはsudo実行なので回避できそうです。
http://issei-m.hatenablog.jp/entry/2013/11/06/131242