vagrant
VirtualBox

Windows7だとVagrant+VirtualBoxを最新バージョンで利用できない!

概要

Windows7にVagrant+VirtualBoxで仮想環境を作ろうとすると、Vagrantのver.2以降がWindows7のPowerShellのバージョンに対応していないため動かないという問題があります。
PowerShellのバージョンを上げれば対応できますが、今回はPowerShellのバージョンを上げずにWindows7でも問題なく利用できる手順をまとめます。

Vagrantをインストール

ver.1の中で最新であるver.1.9.8を入れる

下記から.msiファイルをダウンロードしてインストール
https://releases.hashicorp.com/vagrant/1.9.8/

VirtualBoxをインストール

ver.5.2以降はインストールしたVagrantが対応していないため、
ver.5.1の中で最新であるver.5.1.32を入れる

下記から5.1.32のWindows hostsをダウンロードしてインストール
https://www.virtualbox.org/wiki/Download_Old_Builds_5_1

仮想サーバー構築

今回はCentOS7.0のサーバーを構築する

VM(バーチャルマシーン)の作成

好きな場所にディレクトリを作成
作成したディレクトリにコマンドプロンプトで移動し以下を実行
$ vagrant box add CentOS7.0 https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.1.0/centos-7.0-x86_64.box
$ vagrant init CentOS7.0

Vagrantfileの編集

ディレクトリ配下にVagrantfileが作成されるので、それをエディターなどで編集する

# config.vm.network "private_network", ip: "192.168.33.10"
 ↓ コメントアウトの#を外してip番号を変える
config.vm.network "private_network", ip: "192.168.33.11"

仮想サーバーの立ち上げ

作成したディレクトリにコマンドプロンプトで移動し以下を実行
$ vagrant up

接続

TeraTermなどで

ホスト:192.168.33.11
ポート:22

にSSH接続。

ユーザ名:vagrant
パスフレーズ:vagrant

で認証すれば接続完了。

おまけ

Vagrantfileと同配下にvagrant_up.bat(ファイル名はなんでも良い)を作成し、中にvagrant upと書いておく。
このファイルをWindowsのファイル名を指定して実行に登録しておけば、ファイル名を指定して実行でvagrant_up.batを実行するだけで簡単に仮想環境を立ち上げてくれる。(vagrant haltも同様)