セットアップ用スクリプトは、最初に「Containers」機能のインストールの有無をチェックし、インストールされていなければ「Add-WindowsFeature」コマンドレットを実行してインストールし、サーバーを再起動します。再起動後は、コンテナーホストとしてコンテナーにネットワーク機能を提供するための仮想スイッチの作成とNAT(Network Address Translation)の構成(New-VmSwitch、New-NetNat)が行われます(画面3)。
その後、GitHubからWindows ServerコンテナーのベースOSイメージをダウンロードして展開(wgetおよびInstall-ContainerOsImage)します。このとき、作業フォルダーにはコンテナーのベースOSイメージを含む約3GBのWIM形式(Windows Imaging File Format)のファイル(後で削除しても可)がダウンロードされ、「%PROGRAMDATA%\Microsoft\Windows\Images」フォルダーの下にフォルダーツリーとファイル(Windows ServerコンテナーのOSファイルとレジストリファイル)が展開されます。展開後のサイズは約9GBでした。
最後に、Windows版のDockerバイナリ「docker.exe」がGitHubからダウンロードされ、「C:\Windows\System32」フォルダーにインストールされます。また、このDockerバイナリは「Docker Daemon」という名前でサービスとして登録されます。
なお、WebブラウザーでURL「http://aka.ms/setupcontainers」を直接開いて「ContainerSetup.ps1」の内容を参照することで、これらの一連のセットアップの操作状況を追いかけることができます。
「ContainerSetup.ps1」をパラメーターなしで実行した場合は、スクリプトの実行中に約3GBのベースOSイメージのWIMファイルがダウンロードされます。ネットワーク帯域にも依存しますが、これにはしばらく時間がかかります。ベースOSイメージのWIMファイルを別にダウンロード済みの場合は、以下のように「-WimPath」パラメーターを指定することで、ローカルのダウンロード済みイメージを使用させることができるようです(筆者は試していません)。
.\ContainerSetup.ps1 -WimPath "<ダウンロード済みWIMイメージのパス>"
以下のWindows Server 2016 TP3のダウンロードサイトで提供されている「Windows Server 2016 Technical Preview 3 Core with Windows Server Containers」というダウンロード項目が、ベースOSイメージを含むWIMファイル(CBaseOs_th2_release_10514.0.150808-1529_amd64fre_ServerDatacenterCore_en-us.wim)になります。
リリース直後はISOイメージとWIMファイルを含むZIPファイルとして提供されていました。現在は、ベースOSイメージのWIMファイルを単体でダウンロードできます。「Windows Server 2016 Technical Preview 3 Core with Windows Server Containers」という表現はその名残でしょう。
コンテナーホストとしてのセットアップが完了したら、システムロケールを「英語(米国)」(en-us)に変更しておきます。Windows Server 2016 TP3ではシステムロケールが「日本語(日本)」(ja-jp)の場合、コンテナー内での操作に失敗する(Install/Add-WindowsFeatureやDISMコマンドの失敗を確認)ことがあるからです。現在のシステムロケールは、「Get-WinSystemLocale」コマンドレットで確認することができます。システムロケールを「英語(米国)」(en-us)に変更するには、次のコマンドラインを実行してサーバーを再起動します。
Set-WinSystemLocale en-us; Restart-Computer -Force
Copyright © ITmedia, Inc. All Rights Reserved.