CentOS7にrubyをインストールする

Chefを利用するために、CentOS7にRubyをインストールしたいけど、標準リポジトリではインストールされるバージョンが古く(バージョン2.0.0)、新しいバージョンをインストールしたい要件がありました。

標準リポジトリを使用せず、自由にバージョンを選んでRubyをインストールする方法を記載します。(ソースコードからコンパイルはしない)

関連パッケージ

  • rbenv
  • ruby-build

依存パッケージインストール

rbenv、ruby-buildをインストールするために必要なパッケージをyumコマンドでインストールします。

$ yum -y install git openssl-devel readline-devel zlib-devel

rbenv、ruby-buildをインストール

$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
$ source ~/.bash_profile
$ git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
$ cd ~/.rbenv/plugins/ruby-build
./install.sh

rbenvがインストールされたか確認

$ rbenv -v
rbenv 1.1.0-2-g4f8925a

2.x.x系でインストール可能なRubyを一覧表示

バージョンの後ろにdev、preview、rcがついていないのが安定版です。
今回だと最新安定版は「2.4.0」です。

$ rbenv install -l | grep ' 2.'
.
.
.
2.4.0-dev
2.4.0-preview1
2.4.0-preview2
2.4.0-preview3
2.4.0-rc1
2.4.0
2.5.0-dev

最新安定版のRuby-2.4.0をインストール

インストールしただけでは使えないので色々と設定も追加しておきます。

$ rbenv install 2.4.0
$ rbenv rehash
$ rbenv global 2.4.0

インストールされたRubyのバージョンを確認

$ ruby -v
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]