rbenv で作った環境で Rails をプロジェクト・ローカルにインストールする
2013年07月03日
rbenv で Ruby 環境を構築し、bundler で Rails プロジェクト内に Rails をインストールする方法のメモ。
rbenv による Ruby 環境の構築については『Mac OSX で rbenv と ruby-build を使って Ruby をインストールする』。
一旦 Rails プロジェクト作成(rails new
)用の Rails をインストールする
Gemfile でインストールする Rails のバージョンを指定する
$ vi Gemfile
source 'https://rubygems.org' gem 'rails', '4.0.0'
Rails を vendor/bundle にインストールする
$ bundle install --path vendor/bundle
Rails プロジェクトを作成する
rails
の --skip-bundle
オプションで bundle の install を抑止できる。
$ bundle exec rails new sample_prj --skip-bundle
この後 Rails プロジェクト作成用にインストールした bundler 関連ファイルは不要なので削除する。
$ rm -f Gemfile $ rm -f Gemfile.lock $ rm -rf .bundle $ rm -rf vendor/bundle
--binstubs
を使って bundle exec
を省略できるようにする
rbenv のプラグイン binstubs をインストールして、bundle exec
を省略する。
binstubs をインストールする
$ cd ~/.rbenv/plugins/ $ git clone https://github.com/ianheggie/rbenv-binstubs.git
Rails プロジェクトの gem をインストールする
上で作成した sample_prj のプロジェクト・ローカルに gem をインストールする。
bundler で gem のインストールをする
Rails4 からは ./bin ディレクトリ以下に rails
や rake
コマンドが配置されるので、--binstubs
オプションで binstubs がファイルを生成するディレクトリを別に指定する。
$ bundle install --path=vendor/bundle --binstubs=vendor/bin
このままだと vendor/bin のパスが見つからないので .bash_profile に パスを追加する。
export PATH=./vendor/bin:$PATH
bundler でインストールした各 gem のパスを確認する
$ rbenv which rails /PATH_TO_RAILS_PROJECT/vendor/bin/rails $ bundle show rails /PATH_TO_RAILS_PROJECT/vendor/bundle/ruby/2.0.0/gems/rails-4.0.0