ことの経緯
- Vagrantで今まで開発をしていた。
- Herokuにデプロイしたいものがあった。
- Heroku Toolbeltを入れる必要があるのに、vagrantでできるのか?という疑問からローカルマシンのMAC10.9.14で開発しようと思った。
- MacにrbenvでRubyを入れたりbundle installでRails入れたりしていたのだが、nokogiriを入れろとなった時に詰んだ。(Marvericksのバグらしい)
ローカルに入れたい人はこちら
- 一気に複数個のエラーが発生。エラー名で調べたりしたがよくわからなかったのだが、gem updateしてもダメで、sudoつけたりしたがそれでも出来なかった。そこで質問したところ、Building native extensions. に関しては、xcodeのcommand line toolを入れたらいいというのを聞いたので、これを参考に入れた。
- もう一度sudo gem installをするとインストールできるようになる。
もっと便利にという人はこちら
vagrantの機能で、共有ファイルを使えば、vagrant sshしなくても、ローカルからvagrantのファイルをいじれるというやつを使います。
- ローカルで、vagrantfileがあるディレクトリまで移動。
- そこにvagrantと共有したいディレクトリやファイルを設置
- 以上
-
$ vagrant sshでvagrantに入って、$ cd /vagrant/でvagrantに移動して、$ lsすると、先ほどローカルで入れたディレクトリがある。
私は、vagrantでgemをbundle update,bundle install,bundle exec rails s用途に使い、ローカルで開発して、ブラウザを更新して確認する。okならば、ローカルでheroku createしてgit push -u origin masterでherokuにアプリを上げている。
ローカルで開発するメリットは、mac用のテキストエディタやIDEを利用できるということが大きいと思う。