読者です 読者をやめる 読者になる 読者になる

IwamotoBlog

俺に付いて来い

Vagrant+CentOS7環境にrbenv+ruby-buildを用いてRuby2.2.0を導入する

Ruby Vagrant

あらすじ

Vagrantで作成した仮想マシン(CentOS7)上からrubyで書いたソースをコンパイルしようとしたところ、rubyなんて無いよ!とのお言葉を頂いたので、仕方なく手動でインストールする事を決意。

が、しかし実際に導入しようとしてみると、愉快も愉快エラーのお祭り。
何とかプラグインやライブラリで対処出来たので、その手順を共有しておきます。

環境

種類 バージョン
Mac OSX 10.10.2
CentOS 7.0 x86_64
Vagrant 1.7.2
Virtual Box 4.3.24 r98716
rbenv 0.4.0-143-g4d72eef
Ruby 2.2.0

CentOS7のBoxは下記のリンクのものを使用 https://f0fff3908f081cb6461b407be80daf97f07ac418.googledrive.com/host/0BwtuV7VyVTSkUG1PM3pCeDJ4dVE/centos7.box

1.仮想マシン作成

1.Vagrantインストール

2.VirtualBoxインストール

3.CentOS7.0のBoxを追加

$ vagrant box add CentOS7 https://f0fff3908f081cb6461b407be80daf97f07ac418.googledrive.com/host/0BwtuV7VyVTSkUG1PM3pCeDJ4dVE/centos7.box 

  

4.vagrant-vbguestをインストール

これがないと仮想マシン作成時にホストマシンの/vagrant仮想マシンにマウントできなくなるエラーが発生する

$ vagrant plugin install vagrant-vbguest

  

5.適当なフォルダを作成し、ターミナル上でそこへ移動する

6.仮想マシンを作成

$ vagrant init CentOS7

  

7.仮想マシンを起動

$ vagrant up

  

8.仮想マシンSSHでログイン

$ vagrant ssh

  

2.準備

  

1.まずはRubyがインストールされているか確認する

$ ruby -v

   入っていないようであればへ。入っていて2.2.0以外であれば次へ。2.2.0であるなら何ら問題はない。   

2.Rubyのバージョンが古い場合はアンインストールする

$ sudo yum -y remove ruby

  

3.gitをインストール(gitがすでに入っている場合は次へ)

$ sudo yum -y install git 

  

4.ディレクトリの最上位?に移動し、rbenvをインストールする。ついでにパスも通しておく

$ cd /
$ 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

  

5.ruby-buildをインストールする

$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

  

6.libffi、zlib、opensslを一気にインストールする

これらがないとRubyのインストールに失敗する模様

$ yum -y install libffi libffi-devel zlib zlib-devel openssl openssl-devel

  

7.Rubyをインストールする

$ rbenv install 2.2.0

 

8.インストール出来たか確認

$ rbenv versions

2.2.0と出ればOK   

9.Rubyのバージョンを選択する

$ rbenv global 2.2.0
$ ruby -v

これで

$ ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-linux]

こんな感じのが出ればOK。試しにHelloWorldでもしてみるといいと思う。

ちなみに、仮想マシン上の/vagrantは、この仮想マシンを立ち上げる際に使ったVagrantFileが入っているディレクトリとリンクしてるので覚えておくように。

  

参考

Vagrant+CentOS7にrbenv+ruby-buildでruby2.2.0をインストールしようとしたらエラーでた対策
Ruby 2.2.0をrbenvとruby-buildでインストール
rbenv を開発環境に導入する