2012年9月18日火曜日

rubyのgemとかbundler

昨日のではどうもすっきりしないので、gem管理について色々巡ってみた。
結果、railsするなら、アプリケーションディレクトリの中にbundlerでgemをインストールして、そこだけで完結した環境を作るってのが分かりやすいらしい。

つまり、システム全体でのgem環境、ユーザーのgem環境は自分で面倒をみつつ、アプリはアプリで独立。

で、うちでは特にRUBYな人ではない今は、RVMまで考えず、gem環境をユーザーで管理する。

$HOME/.gemrcでユーザー設定(/etc/gemrcがグローバル設定)できる。昨日書いてたユーザー権限で$HOME以下へのインストールはこのあたりで設定されていた。あと、ドキュメント作らないオプションを追加。中身はこんな感じ。
gem: "--no-ri --no-rdoc --user-install"


それと、ユーザーのgem環境については、 ~/.gem/を削除したら、振り出しに戻れると考えれば何をしても気が楽。
 
railsについては以下の流れでやる。

ユーザー環境でrailsをインストール。

railsアプリを作るときに --skip-bundleフラグを付ける。
  $ rails new myapp --skip-bundle

アプリケーションのディレクトリに入り、Gemfileを編集してbundlerでgemをインス トールするが、インストール先をアプリケーションのディレクトリ内にする。
  $ bundle install --path vendor/bundle




以後のrails関連コマンドの呼び出しは「bundle exec」を付けて呼び出す。 
   $ bundle exec rails generate controller hoge

付け足しとしては、Gemfileに以下の2個のgemを入れる
gem 'execjs'
gem 'therubyracer'


0 件のコメント:

コメントを投稿