rbenv で作った環境で Rails をプロジェクト・ローカルにインストールする

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 ディレクトリ以下に railsrake コマンドが配置されるので、--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

参考サイト

«
»