今年の1月にWSL1とDockerについての記事を書きました。
うまくするとWSL 1上のUbuntuにDockerを入れて動かすこともできるようなのですが、結局私は一度もうまく環境構築できたことなく、この記事に書いたようにDocker Desktop for Windowsを入れて、TCP通信でUbuntu側からWindows上で動作するDockerにアクセスするだけというのが間違いなく動かす方法だったのです。
それが、ついにMay 2020 Updateが出て、WSL 2が動くようになりました。WSLのバージョンアップの目的は色々あったようですが、Dockerのサポートはその一つとなっており、随分前から、WSL 2に対応したDockerを出すという方針はDocker社から示されていました。
WSL 2のUbuntuを準備する
WSL 2を使用するには、まずWindows 10のバージョンをMay 2020 Updateに上げる必要があります。
その方法は、こちらのMicrosoft公式サイトでの説明を参照ください。
次に、WSL 2を導入します。操作手順は、やはり公式サイトを参照すると良いでしょう。
WSL 2の環境が整ったら、Microsoft Storeから、Ubuntuをインストールします。標準版とLTS版から選択できますが、標準版だと現時点ではUbuntu 20.04が導入されるようです。
Docker Desktop for Windowsのインストール
DockerはWindowsデスクトップ上でインストールします(Ubuntu上ではありません)。
こちらのサイトから、Docker Desktop for Windowsをダウンロードして、インストールします。
インストールする際に注意すべきことは、WSL 2オプションを有効にすることです。
Dockerのインストール画面で、Enable WSL 2 Windows Features
というオプションがあります。デフォルトで有効になっていると思います。
実は、これだけなのです。インストールが終わったらWindowsを再起動します。
再起動後、Dockerが自動で起動し、チュートリアル画面などが表示されますので、必要に応じてやってみると良いでしょう。
その後、Ubuntuを開き、docker ps
と打ってみると…、ちゃんとレスポンスが返ってくる!!
WSL 2のUbuntuからDockerコマンドが使えるようになっていることが確認できると思います。
ちなみに、この操作は最近流行のちっちゃいWindows PCであるOne Mix 3上のWindows 10 Homeで試しました。Core i3にメモリ8GBという環境です。この環境で普通にWSL 2のUbuntuとDockerが動くなら、開発でも使えそう…と思えますね!