VagrantとVirtualBoxでCentOS-6.7の仮想マシンを作成
Vagrantfileを生成する。
$ vagrant init
共有フォルダ用のディレクトリを作成する。
$ mkdir rails
Vagrantfileの中身を以下に書き換える。
Vagrant.configure(2) do |config|
config.vm.box = "bento/centos-6.7-i386"
config.vm.network :forwarded_port, guest: 3000, host: 3000
# config.vm.synced_folder "rails", "/home/vagrant/rails", ownner: "vagrant", group: "vagrant"
config.vm.provider "virtualbox" do |vb|
vb.gui = false
vb.memory = "1024"
end
end
vagrantを起動してVirtualBoxのマシンを作成する。
作成したマシンにSSHでログインする。
$ vagrant up
$ vagrant ssh
Rubyのインストール
Gitのインストール
$ sudo yum install -y git
必要なパッケージのインストール
$ sudo yum install -y gcc-c++ glibc-headers openssl-devel readline libyaml-devel readline-devel zlib zlib-devel sqlite-devel kernel-devel
rbenv
のインストール
Rubyのバージョン管理ツール
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
$ echo 'export RBENV_ROOT="/home/vagrant/.rbenv"' >> ~/.bashrc
$ echo 'export PATH="${RBENV_ROOT}/bin:${PATH}"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
ruby-build
のインストール
rbenv install
コマンドを使えるようにする。
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
$ source ~/.bashrc
Ruby2.3.1をインストール
$ rbenv install 2.3.1
rbenvに設定を反映させる
$ rbenv rehash
Macでの標準のRubyバージョンを2.1.2に設定する
$ rbenv global 2.3.1
設定を反映させる
$ rbenv rehash
Rubyのバージョンが変更されたか確認
$ ruby -v
Railsのインストール
$ gem update --system
$ gem instal rails --version="4.2.0"
nodejsのインストール
$ git clone https://github.com/creationix/nvm.git ~/.nvm
$ source ~/.nvm/nvm.sh
$ NODE_VER=6.2.0
$ nvm install $NODE_VER
$ nvm alias default $NODE_VER
ゲストOSとホストOSのフォルダを共有する。
ホストOSのVagrantfileの下記の行のコメントアウトを解除する。
config.vm.synced_folder "rails", "/home/vagrant/rails", ownner: "vagrant", group: "vagrant"
もう一度ゲストOSを再起動する。
$ vagrant reload
ここで何もErrorが出ないで仮想マシンが立ち上がったら成功。
共有フォルダ設定がうまくいかない場合の処理
主な原因は
ゲストOSとVirtualBoxのGuestAdditionsのバージョンが異なるため、
GAの共有フォルダモジュールがうまく機能していない。
そのため、それぞれのバージョンをマッチさせるために、
vagrant-vbguest
をインストールし、再起動する。
$ vagrant plugin install vagrant-vbguest
$ vagrant reload
まだErrorが発生する場合(主にMacBook)、Kernelのセットアップをする必要がある。
$ vagrant ssh
$ sudo yum update kernel -y
$ exit
もう一度ゲストOSを再起動する。
$ vagrant reload
Railsプロジェクトを作成する
Railsプロジェクトを作成する。
$ cd ~/rails
$ rails new sample
無事にRailsプロジェクトを作成できたら、以下のコマンドを実行して、ブラウザから確認する。( http://0.0.0.0:3000 )
$ cd ~/rails/sample
$ rails server -b 0.0.0.0