なんちゃってウェブ系エンジニアの備忘録

某IT企業で働くなんちゃってウェブ系エンジニアが技術やデザインなど役に立ちそうなものなどを備忘録として載せていきます

Window8にVirtualBoxをインストールして開発環境を作ってみる

表題の件、Windowsマシンを使っている私にとってはLinux環境が必要な時があります。
さくらインターネットなどで提供されているVPSを利用する手もありますが、
そこまでお金をかけられない、手軽にテスト環境が欲しい!という人は
VirtualBox + Vagrantを利用することで開発環境を簡単に構築できます。

VirtualBoxをインストール

まずは仮想化ソフトウェアであるVirtualBoxを以下のURLからダウンロードします。
https://www.virtualbox.org/wiki/Download_Old_Builds_4_3
最新版4.3.14だと公式フォーラム等で確認すると不具合が抱えておりまだ解消法見つかっていないとのことなので、1つ下バージョンである4.3.12をダウンロードします。
インストーラはデフォルトのままで問題ないかと思います。

Vagrantをインストール

Vagrantって、今更初めて知りましたが…

Vagrant(ベイグラント)とは

f:id:owen11:20140806201003p:plain

違う環境に移行可能な開発環境を簡単に構築・管理し、配布することができる開発環境作成ツール
Rubyで書かれた設定スクリプトで開発用の仮想マシンを構築できる大変優れたものです。
Vagrant開発者 Mitchell Hashimoto氏に聞いた:「Vagrant」って何ぞ?(・o・) - @IT

Vagrantを使えば、仮想マシン作成から設定の自動化、削除まで簡単に行えちゃいます。
以下のURLからダウンロードできます。
http://downloads.vagrantup.com/

インストーラを起動した後はインストーラの指示に従うだけで完了します。
Vagrantインストール後は再起動が必要なので、注意を。

PCの再起動後、コマンドプロンプトを開いてvagrantが無事インストールされているかどうか確認します。

C:\Users\root>vagrant -v
Vagrant 1.6.3

このように表示が出ればOKとなります。
c\ドライブ配下に作業用のディレクトリを作成します。
今回はc:\localdevというディレクトリを作成しておきます。この辺については自分の環境に合わせて設定してください。

CentOSのインストール

CentOSのインストールするというよりは、厳密に言えばBox(OSのテンプレート)を追加するということになりますが・・・
Box(OSのテンプレート)の追加が必要なので、
以下のサイトから、Box(OSのテンプレート)のURLをコピーしておきます。
http://www.vagrantbox.es/

今回はCentOSの最新バージョンである7をインストールしたかったんですが、
何か不安なので(相性もあるので)、著者は安定版であるCentOS 6.5 x86_64を選択しました。

以下のコマンドで

vagrant box add NAME URL

URLのBoxをVagrantに追加し、NAMEで保存します。
NAMEはどんなOSなのか、バージョンが把握できやすい名前を設定したほうが良いかと思います。

C:\Users\root> cd c:\localdev
C:\localdev> vagrant box add centos65 https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box

回線状況によっては時間が掛かるかもしれませんが終わるまでしばらく待ちましょう。
→ 完了したら、Boxが追加されたかどうか以下のコマンドで確認できます。

C:\Users\root>vagrant box list
centos65  (virtualbox)

仮想マシンの設定、初期化

上記、Box(OSのテンプレート)の追加が完了したら仮想マシンの設定、初期化を行います。
initコマンドで初期化を行えます。

まずは作業ディレクトリへ移動

C:\Users\root> cd c:\localdev
C:\localdev>vagrant init centos65

初期化が完了したら作業ディレクトリにVagrantfileというファイルが作られます。
Vagrantfileは、ネットワークの設定、フォルダ共有、メモリ割り当てなど様々な設定が書かれており、それを元に仮想化環境が立ち上げられます。

ひとまずネットワークの設定だけはやっておきます。
Vagrantfileをテキストエディタで開き、config.vm.networkという設定の行があるので、コメント(#)を外します。
IPアドレスは自分の環境に合わせて適宜変更してください。

# Create a private network, which allows host-only access to the machine
# using a specific IP.
config.vm.network :private_network, ip: "192.168.33.10"

Vagrantfileを修正したらreloadを行い反映させましょう。

C:\Users\root>vagrant reload

そして、upコマンドで仮想環境を起動します。
PCがシャットダウンした時など停止した仮想環境を再度立ち上げたい場合はupコマンドで起動できます。

C:\localdev>vagrant up

これで仮想環境を起動することができたかと思いますので、SSH接続をしてみます。
一応vagrantsshというコマンドが用意されていますが、Windows環境では使えないので
TeratermといったSSHクライアントソフトを利用してください。もしくはVirtualBox上から直接操作してもらっても良いかと思います
rootパスワードは初期設定で何も弄らなければ「vagrant」になっているかと思います。

とこんな感じにまとめてみましたが、Vagrantを使えば

  • OSのインストールが簡易化になったり、
  • 開発メンバーが同じ開発環境(個人の環境に依存しない)を使わせたい

などなど・・・こうした場面において非常に使えるツールではないでしょうか。

通常のLinuxのインストールだとまず初めにユーザー名を入力したり、パーティションを区切ったりいろいろありますがVagrantはもちろんそれがありません。
Boxから起動するだけで楽チンです。

参考URL
https://github.com/tmknom/study-vagrant