動機
前回の成功を受け、調子に乗ってWindows7環境も作ってみることにしました。
仮想デバイスを準備する
前回と同様に、仮想ディスク100GBと Windows7のインストールイメージ(ISO)を準備します。
$ dd if=/dev/zero of=/mnt/vm/windows7/primary.raw bs=10M count=10k
$ ll -h /mnt/vm/windows7/
(略)
-rwxrw-r-- 1 foo bar 2.4G Feb 24 00:32 GSP1RMCHPFREO_JA_DVD.ISO*
-rw-rw-r-- 1 foo bar 100G Feb 24 22:39 primary.raw
docker-compose.yml を記述する
xubuntuとの違いは 下記の通りです。大して変わってません。
- コンテナと仮想マシンに割り当てるメモリを増やした
- CPUタイプを明示的に指定した
- ポート5900はxubuntuで使っているので、5901をマッピングした
-
-device AC97
を追記し仮想サウンドカードを仮想マシンに加えた - 最初から VNCでなくSPICE
docker-compose.yml
windows7:
image: ianblenke/kvm
container_name: windows7
tty: true
privileged: true
mem_limit: 2400000000
ports:
- "5901:5900"
volumes:
- /mnt/vm/windows7:/mnt/vm/windows7
command: "/run.sh \
-name windows7 -cpu core2duo -smp 2 -m 2048 \
-spice port=5900,disable-ticketing,agent-mouse=off \
-vga qxl \
-device AC97 \
-k ja \
-cdrom /mnt/vm/windows7/GSP1RMCHPFREO_JA_DVD.ISO \
/mnt/vm/windows7/primary.raw"
コンテナを作成し、仮想マシンにWindows7をインストールする
docker-composeでコンテナを作成し、結果を確認します
$ docker-compose up -d windows7
Creating windows7
$ docker-compose ps windows7
Name Command State Ports
-------------------------------------------------------------------------
windows7 /run.sh -name Up 3389/tcp, 0.0.0.
windows7 -sm ... 0:5901->5900/tcp
作成できました。SPICEクライアントで <ホストのIPアドレス>:5901番ポート に接続します。
Windows7のインストールイメージで仮想マシンが起動しました。このまま仮想ディスクにインストールします。
(インストール作業は 他の環境と同じなので割愛)
特に変わったところはなく インストールが完了しました。インストールの進行は早かったのですが、動作は若干モッサリで 定常的に使うには辛いかもしれません。チューニング方法はこれから探っていきます。
以上