LoginSignup
15
15

More than 5 years have passed since last update.

Docker + KVM 上で Windows7 を動かす

Posted at

動機

前回の成功を受け、調子に乗って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番ポート に接続します。
boot.png

Windows7のインストールイメージで仮想マシンが起動しました。このまま仮想ディスクにインストールします。
(インストール作業は 他の環境と同じなので割愛)

win7.png
特に変わったところはなく インストールが完了しました。インストールの進行は早かったのですが、動作は若干モッサリで 定常的に使うには辛いかもしれません。チューニング方法はこれから探っていきます。

以上

15
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
15