Step by Step Ruby on Rails

Ruby on Railsで実際にWebサイトを構築する手順をまとめています。

RVMでCentOSにRuby2.0.0、Ruby1.9.2をインストール

RVMのインストール、RVMを使ったRubyのインストール、RVMを使って複数のRubyを管理する方法などをまとめました。

(1)RVMの特長
 
・複数のRuby実行環境の導入、管理を容易に実施できるコマンドラインツール。
・複数のバージョンのRubyをシステム単位やユーザー単位にインストール、管理することができる。
(2)RVMのインストール
 
公式ページのインストールマニュアルを見ると下記3つの方法がありました。
https://rvm.io/rvm/install
 
①Single-User installations(recommended)
②Multi-User installations
③Mixed mode installations
 
①のシングルユーザのインストールが推奨のようなので、この方法によるインストール手順を示します。
 
●シングルユーザーでRVMをインストール(v1.29.2のインストール例)
 
〇インストールした環境
・CentOS6.9
・使用したアカウント名:sample
 
①GPGキーをインストール
$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
gpg: directory `/home/sample/.gnupg' created
gpg: new configuration file `/home/sample/.gnupg/gpg.conf' created
gpg: WARNING: options in `/home/sample/.gnupg/gpg.conf' are not yet active during this run
gpg: keyring `/home/sample/.gnupg/secring.gpg' created
gpg: keyring `/home/sample/.gnupg/pubring.gpg' created
・・・
gpg: /home/sample/.gnupg/trustdb.gpg: trustdb created
・・・
 
②ダウンロードし、インストールスクリプト実行
$ curl -sSL https://get.rvm.io | bash -s stable
・・・
Installing RVM to /home/sample/.rvm/
    Adding rvm PATH line to /home/sample/.profile /home/sample/.mkshrc /home/sample/.bashrc /home/sample/.zshrc.
    Adding rvm loading line to /home/sample/.profile /home/sample/.bash_profile /home/sample/.zlogin.
Installation of RVM in /home/sample/.rvm/ is almost complete:

  * To start using RVM you need to run `source /home/sample/.rvm/scripts/rvm`
    in all your open shell windows, in rare cases you need to reopen all shell windows.

・・・
  * WARNING: You have '~/.profile' file, you might want to load it,
    to do that add the following line to '/home/sample/.bash_profile':

      source ~/.profile
 
③~/.profileを読み込んで設定を反映
 
rvmコマンドの実行確認をするため、~/.profileを読み込む。
(~/.profile内にrvmのパスの設定や"$HOME/.rvm/scripts/rvm"ファイルの読み込みを行っている)
$ source ~/.profile
 
④rvmコマンドの実行確認
$ rvm -v
rvm 1.29.2 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io/]
(3)RVMのアップグレード
 
・以下のオンラインマニュアル参照。
https://rvm.io/rvm/upgrading
 
〇最新の安定バージョンにアップグレード
$ rvm get stable
(4)RVMを使ってRubyをインストール
 
Ruby2.2.6の場合の実行例です。
 
①インストール可能なRubyのバージョンを確認
$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.6]
[ruby-]2.3[.3]
[ruby-]2.4[.0]
ruby-head
 
②Ruby2.2.6をインストール  
$ rvm install 2.2.6

$ ruby -v
ruby 2.2.6p396 (2016-11-15 revision 56800) [x86_64-linux]
(5)複数のバージョンのRubyを管理
 
1)RVMを使わず、システム全体にRuby環境を構築した場合との相違
 
●システム全体にRuby環境を構築した場合
 
※構築方法は以下の記事参照。
CentOSにyumコマンドでRuby1.8.7をインストール
CentOSにRubyGemsをインストール
# ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

# which ruby
/usr/bin/ruby

# 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
 
●RVMで一般ユーザーを使ってRuby環境を構築した場合
 
$ ruby -v
ruby 2.2.6p396 (2016-11-15 revision 56800) [x86_64-linux]

$ which ruby
~/.rvm/rubies/ruby-2.2.6/bin/ruby

$ echo $GEM_HOME
/home/sample/.rvm/gems/ruby-2.2.6

$ gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 2.6.12
  - RUBY VERSION: 2.2.6 (2016-11-15 patchlevel 396) [x86_64-linux]
  - INSTALLATION DIRECTORY: /home/sample/.rvm/gems/ruby-2.2.6
  - USER INSTALLATION DIRECTORY: /home/sample/.gem/ruby/2.2.0
  - RUBY EXECUTABLE: /home/sample/.rvm/rubies/ruby-2.2.6/bin/ruby
  - EXECUTABLE DIRECTORY: /home/sample/.rvm/gems/ruby-2.2.6/bin
  - SPEC CACHE DIRECTORY: /home/sample/.gem/specs
  - SYSTEM CONFIGURATION DIRECTORY: /home/sample/.rvm/rubies/ruby-2.2.6/etc
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /home/sample/.rvm/gems/ruby-2.2.6
     - /home/sample/.rvm/gems/ruby-2.2.6@global
・・・
 
2)RVMで複数のバージョンのRubyを管理
 
①ローカルにインストールされているRubyを確認
$ rvm list

rvm rubies

   ruby-2.0.0-p648 [ x86_64 ]
=* ruby-2.2.6 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

$ ruby -v
ruby 2.2.6p396 (2016-11-15 revision 56800) [x86_64-linux]

$ which ruby
~/.rvm/rubies/ruby-2.2.6/bin/ruby

$ echo $GEM_HOME
/home/sample/.rvm/gems/ruby-2.2.6
 
②使用するRubyバージョンを変更
$ rvm use ruby-2.0.0
Using /home/sample/.rvm/gems/ruby-2.0.0-p648
 
$ rvm list

rvm rubies

=> ruby-2.0.0-p648 [ x86_64 ]
 * ruby-2.2.6 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

$ ruby -v
ruby 2.0.0p648 (2015-12-16 revision 53162) [x86_64-linux]

$ which ruby
~/.rvm/rubies/ruby-2.0.0-p648/bin/ruby

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