前回は「Vagrantとは? なぜ Vagrant なのか?」について説明しました。 そこで述べたように Vagrant の一番の功績はコマンドのシンプルさであり最大の特徴ですが、今回は Vagrant の基本機能について説明し Vagrant について更に理解を深めたいと思います。
Box
Vagrant は仮想マシーンを操作するためのソフトウェアですが、作成する仮想マシーンのベースとなるものを Vagrant では Box と呼びます。
Vagrant の利用の手順として、まずは利用したいOSの仮想マシーンファイル(Boxファイル)を入手することから始まります。 OS をイチからインストールするのは手間がかかりますから、作業のベースとなる仮想マシーン(Box)をクローンして新しい仮想マシーンを構築するのです。
Vagrantbox.es というサイトには、様々な OS の Box ファイルが公開されていますので、そこから OS の Box ファイルを選択して利用すると良いでしょう。
別稿で詳しく説明しますが Vagrant で Box を入手するには、以下のようなコマンドで行います。
$ vagrant box add precise32 http://files.vagrantup.com/precise32.box
また、もちろん自分で Box ファイルを作成することも可能です。 仕事や作業のテンプレートとなる状態の Box を作ったら、今後はそれをベースとして作業に取り掛かることができます。
プロバイダー
Vagrant は、VirtualBox などの仮想化ツールのフロントエンドとなるソフトウェアです。 (Vagrant はもともと VirtualBox のみをフロントエンドとするソフトウェアでしたが、現在は他の環境をサポートしています。) 主には次のプラットフォームに対応しています。
- VirtualBox
- VMware Fusion
- Amazon EC2 + VPC
- Rackspace Cloud
以上のようなバックエンドとなるプラットフォームを、Vagrant ではプロバイダー(Provider)と呼んでいます。
Vagrant のインストール時のデフォルトは VirtualBox を利用するようになっていますが、それぞれのプラグインを入手することで VirtualBox 以外のプロバイダーにも対応することができます。 プラグインは有償のものもありますし無償のものもあります。
例えば VMWare Fusion に対応するプラグインはこちらから入手することができます。(有償)
おわりに
今回は Vagrant の基本となる Box と Provider について説明しました。 次回は共有フォルダ機能 (Synced Folder)について説明します。