CentOS7標準より新しいバージョンのRubyをインストールする

ALL
スポンサーリンク

CentOS7 ではインストールできる Ruby のバージョンがデフォルトでは 2.0.0 と古いので、新しいバージョンを入れる手順です。

SCLリポジトリを設定して Ruby をインストールします。

SCLリポジトリでは、Red Hat Software Collectionsで提供される、デフォルトリポジトリより新しいパッケージをインストールできます。

第8章 Red Hat Software Collections

Red Hat Enterprise Linux のベースシステムに含まれているものと同等の関連パッケージバージョンよりも最新のもの、またはこのシステムで初めて利用可能となるパッケージを提供します。

SCLリポジトリを追加します。

yum install centos-release-scl-rh

通常はSCLリポジトリを無効化しておきます。
必要時にSCLリポジトリを指定してパッケージをインストールします。

/etc/yum.repos.d/CentOS-SCLo-scl-rh.repo

変更前)enabled = 1
変更後)enabled = 0

SCLリポジトリから Rubyをインストールします。
SCLを有効にするために、–enablerepo=centos-sclo-rh オプションを yum で指定します。
SCLリポジトリでは、Rubyパッケージ名の先頭に rh- を付けます。
例えば、下記ではruby2.4をインストールします。

yum --enablerepo=centos-sclo-rh install rh-ruby24

インストールしただけでは、パスが通っていないので、次のコマンドを実行します。
次回ログインから、ruby にパスが通るようになります。

ln -s /opt/rh/rh-ruby24/enable /etc/profile.d/rh-ruby24.sh

これで、新しいバージョンのRubyが使用できるようになりました。

参考

CentOSで、本番環境にRubyを入れるならrbenvではなく、RHSCLがよさげ – Qiita

コメント