つばろぐ

主に C#, .NET, Azure の備忘録です。たまに日記。

VagrantでWindowsのBoxを無料で構築する

Windowsに怪しげなツールをインストールしたり、Powershellコマンドのテストを行ったりする際に、Windows仮想マシンを作成し、検証を行うことがあります。

通常であればVirtualBoxVMWareのような仮想化ツールを使うところでしょうが、今回はVagrantを使ってみます。

Vagrantについては過去エントリにて紹介していますので、そちらをご覧下さい。
Vagrantの導入や使用についての備忘録 - つばろぐ

WindowsのBoxを作る

VagrantWindowsを動かすには、仮想マシンの基となるBoxファイルが必要になります。
テンプレートのようなものですね。

しかしWindowsのBoxファイルは、LinuxOSよりも作り方が難しいです。
WindowsのBoxファイルの作り方は、下記の記事がとても参考になります。
Vagrant で作ったり壊したりできる Windows 環境を手に入れるまでの手順 - てっく煮ブログ

どうやって無料のWindows環境を作るの?

WindowsのBoxを作るには、ライセンスを購入しないといけないじゃん・・・」と思われるかもしれませんが、無料でWindowsを利用する方法があります。

評価版を使うことです。

Microsoftはアプリケーションのテスト等のために、各OSの評価版を公開しています。
評価版なので利用できる期間に限りはありますが、機能は製品版と同等ですので、短期的な検証には持って来いです。

OSの評価版をダウンロードし(Windows Liveアカウント必要)、てっく煮ブログさんの記事に従ってBoxを作成して下さい。

評価版のリンク

Vagrantで実行中のWindowsに接続する

LinuxOSであれば vagrant ssh コマンドで接続することができますが、Windowsではこのコマンドは使うことができません。
Cygwinをインストールすれば vagrant ssh が使えるらしいが)

Vagrantで実行中のWindowsに接続する方法は2つあります。

リモートデスクトップ接続を行う

てっく煮ブログさんの記事ではこの方法が紹介されていました。 localhostにリモート接続をするという、わけ分かんないですねw

f:id:tech-tsubaki:20140822000848j:plain

Vagrantのコマンドを使う

バージョン1.6から搭載されたコマンドです。
Vagrant 1.6 Feature Preview: Windows Guests - Vagrant

コマンドを入力すると実行中の仮想マシンリモートデスクトップ接続を行います。
しかし画面サイズが常に全画面表示となってしまうところが難点。

また現在の最新バージョン(1.6.3)では、vagrant rdpコマンドが正常に動作しないという問題も起きています。

バージョン1.6.4で修正されることを期待しましょう。

以前の発表資料

以前参加した勉強会にて、このエントリの内容を発表しました。
併せてご覧下さい。