Vagrantをインストールして仮想マシンを動かすメモ

綺麗な開発環境を簡単に立ち上げたり、消したりしたいと思った時にVagrantというのを使って仮想マシンの構築を自動化できるようです。普段仕事で使う機会はありませんが、家でプログラミングの勉強をしていると、「この技術を試したいけどPCに余計なライブラリを入れて環境を汚したくない」と言ったことはよくあると思います。

今回はVagrantを使って仮想マシンを作成するまでやってみたいと思います。

Vagrantとは?

詳しくは、Wikipediaなどを見た方がいいと思いますが、どのようなものかというのを整理しておきたいと思います。

Vagrantは、Vagrantfileという設定ファイルを使って、仮想マシンの構築と設定を自動化するソフトウェアです。どのOSのイメージを使って、どのIPアドレスを割り当てて、どのアプリケーションを起動するかなどの設定をVagrantfileに記述して置くことで、あとはVagrantがよろしくやってくれます。

仮想マシンについては、昔はVirtualBoxを対象としていたようですが、現在はVMWareやdockerなどもサポートしているようです。

Vagrantのインストール

Vagrantを使うには、Vagrant本体のインストールと共に仮想マシンも必要となります。今回は、仮想マシンとしてVirtualBoxを使います。

  • MacBook Pro (Retina, 13-inch, Mid 2014)
  • macOS Sierra

VirtualBoxをインストールする

以前、VirtualBoxのインストールは済ませているので、下記を参考にしてください。

MacBook Proに仮想マシンをインストールする方法

Vagrantをインストールする

下記のURLから自分のマシンにあったものをダウンロードしてきます。インストールするバージョンは2.0.0です。

Vagrantのダウンロードページ

下の画面のように、OSごとのインストーラがあるので、自分の環境にあったものをダウンロードします。

Macを使っているので、Mac OS X 64bitを選びました。

Vagrantのダウンロードリンク先ページのスクリーンショット

ダウンロードした「.dmg」ファイルを開き、「vagrant.pkg」を起動してインストールします。

Vagrant.dmgの中身

インストール確認

$ vagrant --version
$ Vagrant 2.0.0

仮想マシンの作成

Vagrantの試運転として、Debian7の仮想マシンを作成してみます。まずはVagrant BoxというゲストOSイメージを取得します。以下のコマンドで、Debian7のイメージをダウンロードします。


$ vagrant box add debian7 http://vagrantboxes.footballradar.com/wheezy64.box

取得したイメージを元に仮想マシンを作成、起動します。


$ mkdir -p ~/vagrant/debian7/ && cd ~/vagrant/debian7/
$ vagrant init debian7

「vagrant init 」を実行するとVagrantfileという設定ファイルが自動生成されます。Vagrantfileには、使用するOSのイメージや起動後の設定をRubyと同じスタイルで記述します。

次のコマンドで今回作成したdebian7を起動します。

Vagrantfileを置いてあるディレクトリと同じディレクトリに入り、「vagrant ssh」で起動したゲストOSにssh接続します。


$ cd ~/vagrant/debian7/
$ vagrant ssh
Linux wheezy64-puppet3 3.2.0-4-amd64 #1 SMP Debian 3.2.41-2 x86_64

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed Nov  8 13:15:57 2017 from 10.0.2.2
vagrant@wheezy64-puppet3:~$ 

カレントディレクトリが別のディレクトリの場合は「vagrant global-status」コマンドを実行した時に表示されるIDを指定します。


$ vagrant ssh [仮想マシンのID]

まとめ

vagrantをインストールして、仮想マシンを起動するところまで試してみました。

Vagrantfileの書き方をもう少し勉強して、ゆくゆくはVirtualBox上でDockerを動かしたり、開発環境を仮想マシンで簡単に構築できるようになりたいです。

シェアする

  • このエントリーをはてなブックマークに追加