vagrantとvirtualboxでmacOSに仮想環境を構築

f:id:media-gatch:20181025202236j:plain

どうもー・ω・ガッチ(@MediaGatch)です。

macを使ったWEB制作を5年ほどやっておりまして、開発環境の構築について書きました。

  • vagrantって何?
  • virtualboxは聞いたことあるけど、、、どうやって使うのかわからない。
  • 仮想開発環境を構築したい

そんな方へ向けた内容です。

目次

vagrantとは?

vagrantとは、仮想環境を簡単に構築できるようするコマンドラインツールです。
仮想環境自体を作るわけソフトではなく、あくまで補助するためのツールです。

開発環境の設定を「Vagrantfile」という名前の設定ファイルに記述することで、細かな設定を気にせず仮想環境の立ち上げをサポートしてくれます。

「Vagrantfile」をgitなどのバージョン管理システムにて管理することで、開発環境の設定を統一することができます。

サーバー設定管理ツール「chef」などと組み合わせることで自動化することも可能なようです。

こちらは、おいおい試していきたいと思います。

virtualboxとは?

Oracleが開発を行っている仮想化ソフトウェアです。

PC上に仮想のPCを作成し、異なるOSを起動することができます。
windowsvirtualboxを使用して、macOSを使ってみたり、macCentOS(Linux)を使ってみたりすることができます。

windowsmacOslinuxと使用できるOSを選ばないことも特徴です。

詳しい内容は、ぜひ公式サイトをご確認していただければと思います。※英語です。。。

【公式】virtualboxサイト

なぜvagrantvirtualboxで仮想環境なのか

macを使用して開発している方の中には、なんで仮想環境?と疑問に思う方もいるのではないかと思います。
linuxのコマンドをそのまま使用できるmacではlocalにそのまま開発環境を作成してしまったほうが簡単ですからね。

ただ、もう少し先を考えてもらえたらと思います。

開発環境をいくつも作る場合(開発メンバーが複数人いるなど)や、本番環境の構築、開発環境と本番環境での差分の発生などなど。 こういったことが発生した場合に、開発環境でのみ起こるバグや、本番環境だけで発生してしまうバグなどが出てきます。

解決策としては、環境の統一です。
しかし環境にはOSのバージョン、ミドルウェアのバージョン、環境変数、パスの違いなど様々な差分を生む要素があるため、手動で対応することは難しく現実的ではないかと思います。

vagrantvirtualboxを使用しツールを使うことで、環境によるバグの発生をなくすことが可能となります。

f:id:media-gatch:20181025202258j:plain

事前準備

まずは準備を行います。すでに準備ができている方は無視してください。

homebrewのインストール

Homebrewは、MacOSのパッケージを管理してくれるコマンドラインツールです。

WEB制作をしていく際に、様々なパッケージを使うことになるかと思います。 画像圧縮してくれるものだったり、差分管理システムのgitもHomebrewでインストールすることができます。

インストールは、公式サイトを確認してください。コマンドをコピペして実行するだけです

【公式サイト】Homebrew

homebrew-caskのインストール

Homebrew-caskはHomebrewの拡張プラグインです。

homebrewでインストールできるものはコマンドラインで使用するツールのみですが、 Homebrew-caskを使うことで、GUIで使用するソフトをインストールすることが可能になります。

例えが、WEBブラウザchromeだったり、テキストエディタだったり。

詳しく知りたい方はこちらをごらんください。⇒ homebrew-caskのgitHub

インストールは以下のコマンドを実行します。

$ brew tap caskroom/cask

vagrantのインストール

インストールは以下のコマンドを実行します。

$ brew cask install vagrant

インストールの確認は以下のコマンドです。バージョンが表示されたらOKです。

$ vagrant -v
Vagrant 2.2.0

virtualboxのインストール

インストールは以下のコマンドを実行します。

brew cask install virtualbox

インストールの確認は以下のコマンドです。virtualboxが起動したらOKです。

$ Virtualbox

OSのインストール

OSのインストールは、vagrantを使用します。

コマンドは以下の構成となります。

$ vagrant box add [名前] [url]

vagrantコマンドのboxは、仮想環境で使用するOSのデータなどをまとめたものです。 仮想環境1つ1つをboxという単位で分けるイメージですね。

[名前]としている部分は任意の文字を入力できます。
自分で分かりやすい名前にしておくことをオススメします。コマンド実行時に使うため、短めの方が良いですね。

[url]部分はインストールするOSをダウンロードするためのURLを指定します。
すでにまとまったサイトがあるので、そこからURLを探してコピペすればOKです。

【vagrantboxの一覧サイト】
vagrantbox

最終的には以下のコマンドのようになります。

$ vagrant box add vagrant-test https://github.com/CommanderK5/packer-centos-template/releases/download/0.7.2/vagrant-centos-7.2.box