お問い合わせはこちら

Windows+WSL2でDocker環境を用意しよう

公開
更新

Web開発の現場をはじめとして、Dockerが使われる機会が増えています。手軽に使えるDockerのテスト環境・開発環境を調達したい、と考えている方は多いでしょう。

Windowsでは「WSL2」の登場により、Docker環境を簡単に確保できるようになりました。この記事では、WSL2とは何かといった概要と、Windows+WSL2でDocker環境を用意する方法について紹介します。

WSL2でDockerを構築

WSLとは

WSL(Windows Subsystem for Linux)は、Windows10・11に搭載されているLinuxの実行環境です。WSLを使うことによって、Windows上でLinuxを利用できるようになります。Linuxの開発環境・学習環境を構築するために、別のPCを用意する必要はありません。これまで通りWindowsを使いながら、1つのアプリのようにLinux環境を操作可能です。

またWindows上から、Linux OSも簡単に入手できます。Ubuntuをはじめ、Debian・SUSEといったLinuxのディストリビューションは、WSL上で使えるかたちでMicrosoftストアにて無料提供されています。

Windows+WSL2でDockerを利用できる

WSL1との違い

2016年にWSL1が、2019年にはWSL2がリリースされました。WSL2はWSL1と比べ、Linuxの実行環境として大幅に改善されています。

WSL1では「LXCore」を使い、Linuxを動作させていました。しかし、この仕組みがLinuxとしては不完全で、WSL1で動作するLinuxには制限があったのです。

一方のWSL2ではLinuxカーネルが搭載されたことで、Linuxとの互換性が格段に高まりました。原理的には、WSL2上で「完全なLinux」が動作します。Linuxカーネルの搭載により、WSL1には対応していなかった「Docker(※)」「FUSE」などもWSL2では使えるようになりました。

※Dockerは、コンテナ型のアプリケーション実行環境を管理するのに使うオープンソースソフトウェアです。コンテナ型のアプリケーション実行環境は、他プロセスから隔離され、あたかも別PCのように動作します。また従来から使われる仮想マシンと比べコンテナは軽量で動作は軽快です。

WSL2の導入に必要な要件

WSL2は全Windowsのバージョンをサポートしているわけではありません。WSL2が対応しているのは、Windows10(64bit版)以降となります。Windowsの32bit版は、WSL2に対応していません。

次にWindowsでWLS2を使うためには、Windowsのバージョン・ビルドについて以下条件を満たす必要があります。

  • x64システムの場合:バージョン 1903 以降、ビルド 18362 以上
  • ARM64システムの場合:バージョン 2004 以降、ビルド 19041 以上

Windowsのバージョン・ビルドは、画面左下の「スタートボタン」から「設定」→「システム」と移動した先にある「詳細情報」にて確認できます。もし上記より古い場合は、OSを更新して下さい。 またWSL2でLinux環境を利用するにあたり、PCのハードウェアはHyper-Vに対応していなくてはいけません。比較的新しいPCであればほとんどはHyper-Vに対応していますが、仮に対応していないとWSL2が使えないので注意して下さい。

Windows+WSL2上でDockerを使えるようにする手順

Windows+WSL2で、Dockerが使えることを紹介しました。それでは、手元のWindowsでどのようにすれば、WSL2からDockerを使えるようにできるのでしょうか。以下、手順を1つずつみていきましょう。

1.Windows10でWSL2を使えるようにする

WSL2を使えるようにするための手順は、Windows10とWindows11で異なるので注意して下さい。Windows10上でDockerを使えるようにするためには、まずWSL2を使える状態にすることが必要です。

※Windows11での操作方法は後の項で紹介します。

WSLと「仮想マシン プラットフォーム」を有効化する

「Linux用Windowsサブシステム(WSL)」と「仮想マシン プラットフォーム」を使えるようにするため、以下操作を行います。

【1】Windowsのスタートボタンから「Windowsシステムツール」→「コントロールパネル」→「プログラム」→「Windowsの機能の有効化または無効化」の順で遷移する

【2】「Windowsの機能の有効化または無効化」(以下)が表示される。「Linux用Windowsサブシステム(WSL)」と「仮想マシン プラットフォーム」にチェックを入れ「OK」をクリックする。

これで有効化の準備が整いました。画面の指示に従って再起動すれば、この手順は完了です。

WSL2用Linuxカーネルをインストールする

以下手順で、WSL2用Linuxカーネルをインストールします。

【1】ブラウザで「https://aka.ms/wsl2kernel」にアクセスする

【2】「x64マシン用WSL2 Linuxカーネル更新プログラムパッケージ」をクリックして、インストーラをダウンロードする

【3】ダウンロードしたインストーラをダブルクリックして起動させる

【4】インストーラが起動したら「Next」をクリックしてインストールをすすめる

WSL2を既定のバージョンで利用できるようにする

Windowsの初期設定では、WSL1が既定のバージョンとなっています。WSL2を既定のバージョンへ変更するため、以下操作を行ってください。

【1】「Windows」+「R」キーを押す。

【2】「ファイル名を指定して実行」メニューが表示されたら、検索欄に「cmd」と入力し、「OK」をクリックする

【3】コマンドプロンプト(黒い画面)が表示されたら、以下コマンドを入力し、「Enter」キーをクリックする

wsl --set-default-version 2

WSL2用Linuxディストリビューションをインストールする

以下手順で「Microsoft Store」から、Linuxディストリビューションを取得してインストールします。
※本記事では「Ubuntu」のインストール手順を紹介します。

【1】Windowsの「スタートボタン」→「Microsoft Store」と進む

【2】検索欄に「Ubuntu」と入力して検索を実行する

【3】検索結果の中から「Ubuntu」を選択して、次の画面で「入手」をクリックする

【4】表示された画面で「開く」をクリックする※インストールが開始されます。

【5】以下のように、Ubuntuの初期設定画面が表示される

画面に従い、以下の順番で入力を進める

1「Enter new UNIX username」新しく作成するユーザー名を入力します
2「New password」パスワードを入力します
3「Retype new password」同じパスワードをもう一度入力します

この入力まで終えたら、Ubuntuのインストール作業は完了です。お手元のWindowsにて、Ubuntuが使えるようになっています。

Windows Terminalでより簡単にLinuxを使えるようにする

Windows Terminalを使うことで、WSL2を1つのタブとして簡単に扱えるようになります。Windows Terminalのインスト―ル方法は以下の通りです。

【1】Windowsの「スタートボタン」→「Microsoft Store」と進む

【2】検索欄に「Windows Terminal」と入力して検索を実行する

【3】「Windows Terminal」が見つかったら「入手」をクリックする※インストールが始まります

【4】インストールが完了したら「開く」をクリックする

Windows Terminalでは以下のように下三角ボタンからUbuntuを起動させて、1つのタブとして利用が可能です。

1.Windows11でWSL2を使えるようにする

Windows10と異なり、Windows11では非常に簡単な操作でWL2が使えるようになり大変便利です。Windows11では以下コマンドを実行するだけで、WSL2が使える状態になります。

wsl --install

本コマンドによって、以下4つの作業が実行されます。

  • 「Linux用Windowsサブシステム(WSL)」と「仮想マシン プラットフォーム」を有効化する
  • WSL2用Linuxカーネルをダウンロード・インストールする
  • WSL2を既定のバージョンとする
  • Ubuntuディストリビューションをダウンロード・インストールする

さらにWindows11では、Windows Terminalがあらかじめインストール済となっています。

2.「Docker Desktop for Windows」をインストールする

「Docker Desktop for Windows」をインストールすることで、Windows10・11上で簡単にDockerが利用できるようになります。「Docker Desktop for Windows」で使えるDockerは、特に制限はありません。一般的なDockerと同じように利用可能です。以下「Docker Desktop for Windows」のインストール手順を紹介します。

【1】Dockerの公式サイト(https://www.docker.com/)にアクセスし、画面右上部の「Get Started」をクリックする

【2】遷移先の画面で「Download for Windows」をクリックする。※「Docker Desktop for Windows」のインストーラがダウンロードされます。

【3】ダウンロードしたらインストーラをダブルクリックしてインストールをすすめる

【4】インストーラが起動したら、「OK」をクリックし画面の指示に従ってインストールをすすめる。※「Configuration」のチェックはそのままでかまいません。

この手順を完了すると、Windows10・11上でDockerが使えるようになります。前項でインストールしたUbuntuからdockerを操作することも可能です。

Dockerがインストールされていることは、Windows Terminal上から以下のように確認できます。

まとめ

WSLはWindows上で動作する、Linuxの動作環境です。なかでもWSL2はLinuxカーネルを搭載し、Linuxとの互換性が向上しています。その結果、Windows+WSL2ではDockerも使えるようになりました。

WindowsではまずWSL2の設定を行い、「Docker Desktop for Windows」をインストールします。Windows上で使えるDockerは一般的なDockerと変わりません。特に制限なく利用が可能です。