WSL2 を利用した Docker Desktop for Windows のインストール(Windows10)
これからWindows10 へWSL2 (Windows Subsystem for Linux 2)に対応したDocker Desktop for Windows のインストール手順をご紹介します。
今までの Hyper-V ベースではなく WSL2 を利用するメリット
まず、WSL2を利用するとどんなメリットがあるかをお伝えすると
- Hyper-VベースよりWAL2の方が処理が早くなる
- Windows 10 Home エディションでも利用できる
というメリットがあります。
これから Docker Desktop for Windows を利用を利用する方は、特に気にせず利用しだせばWSL2を利用する事になるので問題はないですが、今まで、Hyper-V ベースのDocker Desktop for Windows を利用されていた方で、バージョンが2.3.0.2以降のものを利用していれば、WSL2に切り替えられるので、WSL2へ変更することをお勧めします。
Dockerの公式マニュアルも説明の記載があるので、詳細が気になる方はご確認下さい。
Hyper-VベースよりWAL2の方が処理が早くなる
まず、1つめの利点の早くなるですが、今まではHyper-Vベースの場合はHyper-V上にDocker用の仮想マシンを立てて、それ利用していたのですが、Hyper-VベースよりWAL2の方が処理が早くなるはWindows標準機能でWindowsに最適化されたLinuxを利用するので、Docker Desktop 自体の起動やDocker コンテナとホストOSとのファイルのやり取りも早くなるというメリットがあります。
WSL2 も実は裏でHyper-V上のコンテナとして起動しているのですが、WSL1の課題であった、Linuxとの完全互換とファイルアクセスが遅いという問題をWSL2で改善しているため、その改善のメリットがそのまま WSL2 を利用するDocker Desktop も利用できるという事になります。
Windows 10 Home エディションでも利用できる
今まではWindowsでDocker Desktop を利用する場合は、Hyper-V の機能を有効にする必要があったため、Windows 10 Pro または Enterprise エディションであることが必須だったのですが、WSL2が利用できるようになったため、Windows 10 Home エディションでも利用できるようになり、要件が低くなったのでより多くの人が利用できるようになりました。
システム要件
Docker Desktop for Windows をインストールするにあたっては、下記システム要件を満たす必要があります。
- Windows 10 version 1903 以降
- WSL2 の有効化
- Linux カーネルのアップデートパッケージのインストール
- メモリ 4GB
- BIOSレベルのハードウェア仮想化の有効化
インストーラに含まれるコンポーネント
Docker Desktop for Windows のインストーラに含まれるものは下記です。
- Docker Engine
- Docker CLI client
- Docker Compose
- Notary
- Kubernetes
- Credential Helper
Docker Compose やKubernetes などを一緒にインストールされます。
余談(Edge/Stableチャネルの廃止)
Docker Desktop CE では、Edge版(最新盤)とStable版(安定版)の2つがあり、Docker Desktop上で切替えて利用できたのですが、バージョン3からはEdge/Stableのチャネルが廃止となり、今後は自動的に最新版(Edgeという意味ではなく、単一のチャネルになります)になるようです。
背景としては
- バージョンアップの度にフルダウンロード(100M~)が必要で時間がかかる
- 2チャネルあると混乱する
という、ユーザからの苦情があった模様です。
詳しく知りたい方は、リリースノートをご参照下さい。
WSL2 を利用した Docker Desktop for Windows のインストール(Windows10)
これより、Docker Desktop for Windows のインストール手順を紹介します。
システム要件を満たしているかの確認方法
デスクトップのWindowsマークを右クリックして、「システム」をクリックする。
バージョンが1903より新しいことを確認する。画像は20H2なので新しい事が確認できます。
「Ctrl」「Alt」「Esc」を同時に押してタスクマネジャーを表示させ、パフォーマンスタブをクリックし、右下に「仮想化:有効」と表示されていることを確認する。
もし、有効となっていない場合は、ご利用のパソコンによって実施方法が異なるので、ご自身のパソコンの型番とBIOSレベルのハードウェア仮想化の有効化でググってやり方を調べてみてください。
WSL2の有効化とLinux カーネルのアップデートパッケージのインストール
microsoftの公式手順にそって、WSL2の有効化とLinux カーネルのアップデートパッケージのインストールの手順を紹介します。
デスクトップのWindowsマークを右クリックして、「Windows PowerShell(管理者)」をクリックする。
Linux 用 Windows サブシステムを有効にするために。Powershellで下記を実行する。
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
操作は正常に完了しました。と表示されている事を確認する。
仮想マシンの機能を有効にするために、Powershellで下記を実行する。
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
操作は正常に完了しました。と表示されている事を確認する。
必要に応じて、お使いのパソコンの再起動を実施する。
x64 マシン用 WSL2 Linux カーネル更新プログラム パッケージをダウンロードする。
※上記のリンクはmicrosoftの公式手順にあります。
ダウンロードした更新プログラム パッケージを実行する。
「実行」をクリックする。
場合によっては、セキュリティの警告がでますがOKをクリックして進んでください。
「Next」をクリックする。
クリックするとインストールが開始されます。
場合によっては、セキュリティの警告がでますがOKをクリックして進んでください。
「Finish」をクリックする。
これでLinux カーネルのアップデートパッケージのインストールが完了です。
WSL 2 を既定のバージョンとして設定するために、先ほど開いていたPowerShellで下記を実行します。
wsl –set-default-version 2
メッセージの意味が良くわからなく、設定されたか不安にはなりますが、これで大丈夫です。
これで、WSL2がデフォルトに設定されました。
Docker Desktop for Windows のインストール
Docker のサイトで「Get Started」をクリックする。
「Downlod for Windows」をクリックしダウンロードする。
インストーラーをダブルクリックして実行する。
このまま「OK」をクリックする。
クリックするとインストールが開始されます。
Installation Succeeded と表示されれば、インストールは完了です。
Docker を利用するためにはOSの再起動が必要となりますので、「Close and restart」 をクリックしてOSの再起動を実施します。
※OS再起動したくない場合は、右上の「×」で閉じて任意のタイミングでOS再起動してください。
OSが再起動後にDocker が起動してきますので、「Start」をクリックする。
リポジトリのクローンは不要なので、このまま「Next Step」をクリックする。
もし、Gitからgetting-startedのリポジトリをクローンしたい場合は、画面のコマンドを実行してクローンしてください。
ビルドも不要なので、このまま「Next Step」をクリックする。
RUNも不要なので、このまま「Next Step」をクリックする。
「Done」をクリックする。
お疲れ様です。
これでインストールは完了です。