アーカイブ

RubyGems、Bundler、RVMの関係とgemのインストール場所、GEM_HOMEについて

RubyGems、Bundler、RVMの関係、RVMを使用した場合のgemのインストール場所、GEM_HOMEとそれ以外の場合についてまとめて整理しました。
 
●RubyGemsとgemコマンド
 
・Ruby言語用のパッケージ管理システム。
・gemコマンドでRubyソフトウェアパッケージ(gem)を簡単にダウンロード、インストール。
・Rubyソフトウェアパッケージ(gem)のインストール先は、環境変数$GEM_HOME又は"gem environment"で確認できる。
※詳細は以下の記事参照。
RubyGemsとgemコマンドの概要
 
●Bundler
 
・Railsアプリで使用するRubyソフトウェアパッケージ(gem)のバージョン、依存性の管理が出来る。
・”Gemfile”という名前のファイルで設定を行う。
・”bundle install”などのコマンドを実行すると”Gemfile”に記述されている各パッケージがgemコマンドを使ってインストールされる。
Gemfileの記述例)

source "http://rubygems.org"

gem "rails", "4.1.5"
gem "sqlite3"
gem "sass-rails", "~=> 4.0.3"
  :

・Rubyソフトウェアパッケージ(gem)のインストール先は、環境変数$GEM_HOME又は”gem environment”で確認できる。
※Bundlerの詳細は以下の記事参照。
Bundlerの概要、使用方法
 
●Ruby Version Manager(RVM)
 
・複数のRuby実行環境の導入、管理を容易に実施できるコマンドラインツール。
・複数のバージョンのRubyをシステム単位やユーザー単位にインストール、管理することができる。
・”rvm use ruby-2.x.x”などのコマンドを実行して、使用するRubyのバージョンを切り替えることができる。Rubyのバージョンを切り替えると、それに応じてgemのインストール先(環境変数$GEM_HOMEの値)やRubyのパスが切り替わる。
例)

$ rvm use ruby-2.0.0
Using /home/sample/.rvm/gems/ruby-2.0.0-p648
 
$ which ruby
~/.rvm/rubies/ruby-2.0.0-p648/bin/ruby

$ echo $GEM_HOME
/home/sample/.rvm/gems/ruby-2.0.0-p648

※詳細は以下の記事参照。
RVMを使ってRubyのインストール、複数のバージョンのRubyを管理

CentOSにRubyGemsをインストール

●インストール
 
①RubyGemsをダウンロードし、サーバーにアップロード
 
②解凍し、setup.rbを実行

# tar xvf rubygems-1.8.24.tar
# cd rubygems-1.8.24
# ruby setup.rb
 :
RubyGems 1.8.24 installed

== 1.8.24 / 2012-04-27

* 1 bug fix:

  * Install the .pem files properly. Fixes #320
  * Remove OpenSSL dependency from the http code path
------------------------------------------------------------------------------
RubyGems installed the following executables:
        /usr/bin/gem

 
●インストール後の確認
 

# gem -v
1.8.24
# gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 1.8.24
  - RUBY VERSION: 1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]
  - INSTALLATION DIRECTORY: /usr/lib64/ruby/gems/1.8
  - RUBY EXECUTABLE: /usr/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /usr/lib64/ruby/gems/1.8
     - /root/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/

CentOSにyumコマンドでRuby1.8.7をインストール

●RPMリポジトリの確認

Ruby1.8.7がCentOSのRPMパッケージのリポジトリにあるか確認します。

$ yum info ruby
:
Available Packages
Name        : ruby
Arch        : x86_64
Version     : 1.8.7.352

●Ruby1.8.7をインストール

# yum install ruby
:
Installed:
  ruby.x86_64 0:1.8.7.352-7.el6_2

Dependency Installed:
  compat-readline5.x86_64 0:5.2-17.1.el6
ruby-libs.x86_64 0:1.8.7.352-7.el6_2

Complete!

●インストール後の確認
 
# ruby -v
ruby 1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]
 
# which ruby
/usr/bin/ruby