波打際のブログさん

主に、プログラミング備忘録など。

Vagrantを使ってサクッと仮想環境を準備する

はじめに

VPSを利用した時に、本番環境でいきなりサーバー構築を試みるのは恐ろしかったので最近覚えたてのVagrantで仮想環境を構築しました。その備忘録です。

Vagrantとは

仮想マシンの管理ツールです。
仮想環境を利用する際に、OSのisoを落としてきてインストール・・・と言った、従来は手動で行なっていた作業を自動化してくれます。

インストール

Vagrantを使用するためにはVagrantの他にVirtualBoxが必要となります。
それぞれ使用するOSに合わせてダウンロードを行い、インストールしてください。

VirtualBox4.2.14とVagrant1.2.2の組み合わせで使用したところ、エラーで起動できませんでした。(Ubuntu12.04LTS 32bit)
この問題はUbuntu以外でも発生しているらしく、VirtualBox4.2.14と組み合わせて使用した場合に発生するそうです。

バージョンをひとつ下げて、VirtualBox4.2.10とVagrant1.2.2の組み合わせで正常に動作しました。

4.2.10はここからダウンロードできます。

Vagrantの使い方

VagrantにBoxを追加する

BoxとはVagrantで利用される仮想マシンのイメージファイルとメタデータで構成されます。
Boxの追加はaddコマンドを利用して行います。

$ vagrant box add <BOX名> <URL>

precise64というbox名で、公式Boxのprecise64.box(Ubuntu12.04 64bit)を追加してみます。

$ vagrant box add precise64 http://files.vagrantup.com/precise64.box

その他のBoxについては後述の Vagrantで使用できるBox を参照してください。

追加したboxはlistコマンドで確認することができます。

$ vagrant box list

Vagrantを初期化する

作業用ディレクトリを作り、その中でinitコマンドを実行してVagrantを初期化します。

$ vagrant init <BOX名>

先ほどのprecise64.boxを使用して初期化してみます。

$ vagrant init precise64

Vagrantの実行方法

作業用ディレクトリ内でupコマンドを使用すると仮想マシンが起動します。

$ vagrant up

haltコマンドで終了します。

$ vagrant halt

再起動はreloadコマンドを使用します。

$ vagrant reload

仮想マシンの破棄はdestroyコマンドを使用します。
destroyコマンドを実行してもbox自体は消えないので、upコマンドで初期状態の仮想マシンを実行することが可能です。

$ vagrant destroy

仮想マシンの操作

仮想マシンの操作はSSHで行います。vagrantのsshコマンドで仮想マシンに接続します。

$ vagrant ssh

このコマンドをWindowsで実行した場合、WindowsにはSSHクライアントが標準でインストールされていないのでエラーが表示されます。別途puttyなどのSSHクライアントをインストールして、このコマンドを使用せずにSSH接続を行います。


Vagrantで使用できるBox

公式Box

Vagrantが公式に用意しているBoxは下記の通りです。(2013年6月現在)

Ubuntu Precise 64 Bit

最新版は公式githubのwikiで確認してください。

野生のBox

野生のBoxは下記の有志のサイトに掲載されています。

ただし上記サイトは、誰でもpull requestでboxを登録できる仕組みなので、公式のboxに比べればリスクがある点に注意して下さい。

参考サイト