virtualboxとvagrantを使ってローカル開発環境構築RTAしてみた

※この記事は、苫小牧高専 Advent Calendar 2016 - Adventar10日目の記事です。

 

はじめに

こんにちは、ふっくん(@fk2763owl)と言います。

現在5年生の僕は卒業研究真っ只中で、日々卒研に明け暮れています。

 

その日も、いつものように「PCの動作重いし管理者権限くれないしなんなんだこの卒研室」と愚痴を呟きながら卒研をしていました。

その卒研の最中、使っているPC上のVirtualBoxが動作しなくなりました(おそらくメモリ不足)。

いろんなモヤモヤが溜まっていた僕は、(もうこんな卒研室なんかこりごりだ!)と思い自分のPCで卒研することにしました。

 早急に環境構築して遅れを取り戻したかった僕はVagrantに手を出してみました。

その時の早さとラクチンさに感動し、

 というツイートをしたところ、某あひるアイコンから「アドベントカレンダーネタやん」というリプが飛んできたのでRTAをすることになりました。

 

というわけで、vagrantを使ったローカル開発環境構築のRTA(リアルタイムアタック)やっていこうと思います。 

Vagrantについて細かく解説を行う記事ではなく、あくまでタイムを計るだけの記事です。

 

Vagrantとは

Vagrant(ベイグラント)は、FLOSS仮想開発環境構築ソフトウェア[1]VirtualBoxをはじめとする仮想化ソフトウェアやChef英語版Salt英語版Puppetといった構成管理ソフトウェアのラッパーとみなすこともできる。

Vagrantを用いると、構成情報を記述した設定ファイルを元に、仮想環境の構築から設定までを自動的に行うことができる[2]。(Wikipedeiaより引用)

ざっくりいうと、環境構築が簡単になるツールでVirtualBoxVMWareなどの仮想化ソフトの操作がラクチンになるすごいソフトです。

 

環境など

使用したPCやソフトのバージョンは

macOS Sierra 10.12.1

VirtualBox 5.1.8

Vagrant 1.9.0

です。

 

作成する環境はなんでもいいんですが今回は

Ubuntu Server 14.04 LTS

apache2

とします。

 

手順

 VirtualBoxVagrantはインストール済みという前提で手順を説明します。

  1. 「$vagrantb add "name" "url"」でBox(仮想マシン)を取得する。
  2. VM用のフォルダを作成し「$vagrant init "name"」でvagrantfileを生成する。
  3. 「$vagrant up」で仮想マシンを起動する。
  4. 「$vagrant ssh」で仮想マシンに接続する。
  5. 仮想マシンにapache2をインストールする。
  6. ブラウザでアクセス
  7. 計測終了

 

やってみる

では計測していきます。

なお、Ubuntuapacheのデフォルトで表示されるWebページが表示されたら計測終了とします。 

f:id:fk2763owl:20161210221131p:plain

今回はこんな感じで計測しました。

 

 

f:id:fk2763owl:20161210221336p:plain

「$vagrantb add "name" "url"」でBox(仮想マシン)を取得していきます。

今回はUbuntu Serverを取得するので

$vagrant box add ubuntu14.04 https://oss-binaries.phusionpassenger.com/vagrant/boxes/latest/ubuntu-14.04-amd64-vbox.box

としました。この作業が1番時間がかかります。

 

 

f:id:fk2763owl:20161210221311p:plain

boxを追加している間に別のタブでVM用のフォルダを作成していきます。

 

 

f:id:fk2763owl:20161210222007p:plain

boxの追加が完了したら

$vagrant init ubuntu14.04

で、vagrantfileを作成し

$vagrant up

で、仮想マシンを起動させました。

 

f:id:fk2763owl:20161210223304p:plain

仮想マシンが起動したら

$vagrant ssh

で、仮想マシンに接続し

$sudo apt-get install apache2

で、apacheをインストールしました。

 

 

f:id:fk2763owl:20161210222422p:plain

apacheをインストールしている間にvagrantfileのアドレスの書いてある行のコメントアウトを外し、そのアドレスをコピーしておきます。

 

 

f:id:fk2763owl:20161210224259p:plain

ブラウザでコピーしたアドレスにアクセスしたら「It Works」が表示され計測終了です。

 

まとめ

今回の条件で環境構築した場合タイムは32分31秒でした。

そのうちの30分くらいはbox(仮想マシン)の取得にかかった時間ですけどね。

 

・・・画像とか貼り終えてまとめを打ち込みながら思ったんですが、この記事ただタイムアタックしただけなのでvagrantの利点が伝わったのか不安です。

一応補足するならば、コマンドちょこっと打つだけで環境が作れるし、チームで同一の環境を構築した場合とかにもBoxファイルを作成して共有すればいいだけなので便利ですよってことですね。

 

以上、苫小牧高専Advent Calendar 10日目の記事でした。

次はCHIKEN_MAN_くんの「エモーショナルに行きたいね」です。