前回の続きで、Parallels用のWindows Boxを作る手順について説明します。
Boxの作り方
Creating a Base Box - Vagrant Parallels Provider Documentation に公式な作成手順が載っているのでこれに倣ってBoxを作っていきます。
1. ベースとなるゲストVM(Windows OS)の作成
VirtualBoxでのBoxの作り方の手順と同様にベースとなるゲストVMを作り、OSの設定を行ってください。
ゲストVMの設定が終わったらVMをシャットダウンします。
2. Boxサイズの最適化
これは必須の手順ではないのですが、公式の手順に載っているので一応記載しておきます。
Boxを作る前にprl_disk_tool
コマンドを使ってVHDのサイズを最適化します。
作ったゲストVMが/Users/stknohg/Documents/Parallels/Win2012R2Box.pvm
だとした場合、以下の様にコマンドを実行します。
prl_disk_tool compact /Users/stknohg/Documents/Parallels/Win2012R2Box.pvm/harddisk.hdd
3. Boxの作成
続けてBoxを作成します。
最初に言ってしまうとParallelsのBoxは仮想マシンのPVMファイルにmetadata.json
とVagrantfile
を付けてtarで圧縮したものになります。
適当なディレクトリを作り、そこにPVMファイルをコピーまたは移動します。
Vagrantfile
にはそのBoxのデフォルトとして設定したい項目を記載します。
最低限動かすだけで良ければ空ファイルで構いません。
metadata.json
にはVagrantのフォーマットに従った内容を記載します。
最低限動かす場合は以下の内容だけで良いです。
{"provider":"parallels"}
最終的に作成したディレクトリにこれらの3ファイルが配置される様にします。
/[作ったディレクトリ]/ Vagrantfile metadata.jason Win2012R2Box.pvm (作ったゲストVM)
最後にtarコマンドで作ったファイルをまとめて圧縮します。
ディレクトリを/Users/stknohg/Documents/
に作った場合、以下の様にコマンドを実行してください。
cd /Users/stknohg/Documents/ tar cvzf Win2012R2.box ./Win2012R2Box.pvm ./Vagrantfile ./metadata.json
Boxファイルの登録
作成したBoxファイルはvagrant box add
コマンドで登録すればOKです。
注意事項
現時点ではWindowsのBoxに対してIPアドレスを設定することが出来ず、Issueとして登録もされています。
この問題について調べてみたのですが根が深そうで簡単には直らない様な気がしてます。
良い方法では無いのですがこの問題をとりあえず回避する手段もあるので別エントリで触れたいと思います。*1
おまけ
ParallelsのBoxを作るには手作りする以外にVeeweeを使う方法もあります。
Using Veewee - Vagrant Parallels Provider Documentation
ただ、VeeweeでParallels Boxを作りには別途SDKが必要だったりとちょっとBoxを作る程度であれば手作りで十分じゃないかと個人的には思っています。
*1:あとでIssueにもコメントしたいと思います...