Vagrant (ソフトウェア)

Vagrant（ベイグラント）は、仮想機械を構築するためのソフトウェアである。構成情報を記述した設定ファイル (Vagrantfile) を元に、仮想環境の構築から設定までを自動的に行うことができる。最新版v3はGoで開発されている。ソースアベイラブルの Business Source License で配布されている。

概要
仮想機械の提供自体は、VirtualBoxをはじめとする仮想化ソフトウェアが行う。Vagrantは、これらソフトウェアが用意されているのを前提として、仮想機械の設定や立ち上げに特化している。このため、既存の仮想化ソフトウェア及び構成管理ソフトウェア（例: Chefや、Puppet、Ansible）をラップしたものとみなすこともできる。

サポート
当初はVirtualBoxをターゲットとしていたが、1.1以降のバージョンではVMwareなどの他の仮想化ソフトウェアやAmazon EC2のようなサーバー環境も対象とできるようになった。Vagrant自身はRubyで作成されているが、PHPやPython、Java、C#、JavaScriptといった、他のプログラミング言語の開発においても用いることができる。

バージョン1.6以降ではコンテナ管理フレームワークのDockerがネイティブサポートされており、軽量コンテナLXCを取り扱えないWindowsやMac上でも各種Linuxベースの開発環境を容易に利用できるようになった。

またvagrant-libvirtプラグインにより、仮想化管理用APIのlibvirtもサポートされている。

参考文献

外部リンク
 Vagrant公式サイト 

Ruby
クロスプラットフォームのソフトウェア
仮想化