今さら IE8 + Win7 の環境を Mac OS X 上に構築する手順


IE8 を使っている時点でセキュリティ的に大問題ですが、世間にはまだ多くのユーザーが残っています。残念ながらWEBサービス提供者としては見過ごすことができません。画面を修正すると、IE8 での検証もしなければならないのです。

今回はそんな悲しい運命を背負われた人が Mac 上で IE8 を動かせるようにする方法を共有します。

※なお、IE9-11 の環境も構築できます。詳細は後述。

どうやって実現する?

幸いにも Microsoft が IE8 インストール済みの Windows7 の VM イメージを無償公開しているため、これを利用します。

もともとは modern.IE というプロジェクトで検証用の VM を配布していたようですが、今は単に developer.microsoft.com の1コンテンツになっています。

検証環境

  • MacBookPro (2015)
  • OS X El Capitan 10.11.5
  • Vagrant 1.8.4
  • Oracle VirtualBox 5.0.16

(Vagrant と VirtualBox のインストール方法は MacにVagrantとVirtualBoxを入れてみる - Qiita あたりを参考に。インストーラーをダウンロードするだけですが。)

導入手順

イメージのダウンロード

https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/ から以下の条件でダウンロード。4.2GB もあるので結構時間がかかります。

  • Virtual Machine: IE8 on Win7
    • ※IE9-IE11 を選択すれば、同様に IE9-11 の環境も構築できます
  • Select platform: Vagrant

ダウンロードが完了したら解凍します。 

なお、このイメージは zip64 なる形式で圧縮されているようで、Mac 標準の Finder でダブルクリックして解凍すると、.cpgz という拡張子のファイルが出てきて、それを解凍すると .zip という拡張子のファイルが出てきて…という無限ループに陥ります。今回は 無限zip〜cpgzをTerminal(7-Zip)で解凍(Mac, OSX) – Kumi-Log を参考にして、7-Zip を使いました。

brew install p7zip
7z x IE8.Win7.Vagrant.zip
# 'IE8 - Win7.box' という VagrantBox ファイルが展開される

Vagrantfile の作成

続いて Vagrantfile を作ります。

# box ファイルをフォルダに入れる
mkdir ie8box
mv IE8\ -\ Win7.box ie8box
cd ie8box

# Vagrantfile を作成
vagrant init

vim Vagrantfile

Vagrantfile の中身は以下。

Vagrantfile
Vagrant.configure(2) do |config|
  config.vm.box = "IE8 - Win7.box"
end

Windows VM の起動

最後に Vagrant を起動します。

vagrant up

# => ...
# =>     default: Warning: Authentication failure. Retrying...
# =>     default: Warning: Authentication failure. Retrying...

ここは Vagrantfile のオプションが足りていないようで、ssh ログインしようとしていつまでも失敗しています。が、VirtualBox を確認すれば、問題なく Windows VM が立ち上がっているでしょう。

作成された VM をダブルクリックして、画面を開きます。

以上で完了です。IE8 のクレイジーな挙動を堪能しましょう。

参考