Railsをbundlerでプロジェクト毎に管理

普通にgem install railsとかしちゃうと大量の依存gemがシステムにインストールされてしまってなんかクリーンじゃない。 ということでタイトルの通り、Rails自体もbundlerでプロジェクト毎にインストールする。

まずはApplication名にしたい名前のディレクトリを作成

$ mkdir hoge
$ cd hoge

bundle initGemfileの作成

$ bundle init
Writing new Gemfile to /home/vagrant/sandbox/Gemfile

Gemfileでrailsgemを指定

# A sample Gemfile
source "https://rubygems.org"

gem "rails"

railsをbundlerで指定のディレクトリにインストール

$ bundle install --path vendor/bundle

bundle exec rails new .でカレントディレクトリにRailsプロジェクトを作成 Gemfileを上書きしてよいか聞かれるので、Yを打つ。

$ bundle exec rails new .
       exist
      create  README.rdoc
      create  Rakefile
      create  config.ru
      create  .gitignore
    conflict  Gemfile
Overwrite /home/vagrant/sandbox/Gemfile? (enter "h" for help) [Ynaqdh]

サーバー起動

$ bundle exec rails s

VirtualBoxのネットワークの種類

VirtualBoxのネットワークの種類。よくわからなくなるのでメモメモ。

NAT

ゲストOSからインターネットは繋がるが、ゲストOSとホストOS間は繋がらない。

NATネットワーク

NAT接続の仮想マシン同士を接続し、相互の通信が取れるNAT接続

ブリッジアダプター

ゲストOSがホストOSと同じネットワークに繋がる。
インターネットに繋がり、ゲストOSとホストOS間も繋がる。
同じネットワーク上の他のPCからも見える。

内部ネットワーク

仮想マシンを複数起動した際、マシン間を繋ぐためのネットワーク

ホストオンリーアダプター

ゲストOSとホストOS間のみ通信ができるネットワーク

汎用ドライバー

UDPトンネルが使えるらしい。

参考