Railway gun

Web系企業に勤めるサラリーマンが書くブログ

Windows7にVagrant環境を作ってRuby on Railsを動かしてみる①

Ruby on Railsを学んでみようと思い、無料で公開されているチュートリアルをやってみています。

Ruby on Rails チュートリアル:実例を使って Rails を学ぼう

今まではAWS上に建てたサーバでコーディングしていましたが、ブラウザで作ったサイトを見るのにローカルの方が楽なので、PC上にVagrantをインストールして、CentOSを動かしたうえでRailsをやってみようと思います。

Vagrant環境の準備

Vagrantを使うためには

  1. Ruby
  2. VirtualBox
  3. Vagrant

のインストールが必要になります。
どれからインストールしてもそれほど問題はありませんでした。

Rubyのインストール

私のローカルPCにはRubyすら入っていなかったので、まずはRubyを入れます。

下記のサイトにWindowsインストーラ形式のバイナリがおいてあるのでダウンロードしてきます。私は最新版の2.2.1-p85(64ビット版)を落としてインストールしてきました。
RubyInstaller for Windows

インストーラ環境変数まで設定してくれる・・。便利!コマンドプロンプトで確認してみます。(Linuxのコマンドのように書いてありますが、"C:\"などと書くのが面倒なだけで、Windowsコマンドプロンプトを使っています。ここら辺のコマンドはどっちでも一緒だし。)

$ ruby -v
ruby 2.2.1p85 (2015-02-26 revision 49769) [x64-mingw32]

無事にインストール完了。

VirtualBoxのインストール

同じく下記のサイトからダウンロードしてインストールするだけ。
Downloads – Oracle VM VirtualBox

適当にインストーラを進めて行けば無事にインストール完了。
ここで再起動を求められるかもしれません。

Vagrantのインストール

コレも簡単。下記のサイトからダウンロードしてインストール。
Vagrant

コマンドプロンプトからvagrantコマンドが使えるかを確認。

$ vagrant -v
Vagrant 1.7.2

ココも問題なく、インストール完了。これでvagrant環境を立ち上げる前の前準備は完了。

バーチャルマシンの起動

まずはVagrantにバーチャルマシンを登録する作業からです。下記に使えるイメージファイルがおいてあるため、好きな物を選択。
A list of base boxes for Vagrant - Vagrantbox.es

CentOSが使いたかったので、"CentOS 6.5 x86_64"を選択します。右に書いてあるURLをコピーして、コマンドプロンプトで下記のコマンドを打ちます。
(※ディレクトリは好きな場所に移動してください。)

vagrantはコマンド名、boxはイメージファイル全般を扱うオプション、addはboxのオプションでイメージを追加するオプション、centos_6_5はダウンロードするイメージのタグのようなもの(なんでもOK)、そして最後にダウンロードするイメージのURLです。

$ vagrant box add centos_6_5 https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box

自動的にダウンロードが始まるので、完了するまでしばし待ちましょう。
ダウンロードが完了したら、下記のコマンドで環境の初期化を行います。

$ vagrant init centos_6_5

"Vagrantfile"がカレントディレクトリにできたよ!というメッセージが出てくると思います。
これはVagrantを起動する際に使う設定になりますが、とりあえず動かしてみるには触らなくとも大丈夫ですので、そのまま起動してみます。

$ vagrant up

ディスク容量が圧迫されていたり、Ruby環境変数がうまく通っていないなどが無い限り、うまくいくと思います。デフォルトでは127.0.0.1の2222ポートがsshでつなげるようになっているはずです。(その旨表示が出ます。)

ログイン

TeraTermputty等のコンソールを使って127.0.0.1:2222にアクセスします。アカウント名・パスワード共に"vagrant"でログインできるはずです。
f:id:pioneer_in_ocean:20150310224711p:plain
f:id:pioneer_in_ocean:20150310224827p:plain

無事にログイン。f:id:pioneer_in_ocean:20150310224923p:plain


とりあえず、本日はここまで。