Windows HomeにWSL2+Docker Desktop for Windows Edgeを導入しよう！

# 概要
*巷で有名なDockerがWindows Homeでも動くようになったぞー！*
ということで入れてみました。WindowsHomeでWSL2+Docker Desktop for Windows Edgeを入れる記事は既にいくつかありますが、変わってる点もあると思うので丁寧に解説していきます。
Windows HomeでもDockerが使いたい…！という方のお役に立てば幸いです。
筆者は64bitのOSを使用しています。Windows Insider ProgramはいわばWindowsを発展させるための人柱です、OSが壊れてしまっても責任はとれませんのでご注意ください。

# ざっくりとした流れ
1. WSLを導入
2. Windows Insider Programに参加
3. OSをアップデート
4. WSL2の導入
5. Visual Studio Codeの導入
6. Docker Desktop for Windows Edgeの導入

# 1. WSLの導入
WSLを導入していない方のみ対象です。もう入っとるわ！という方は次の章へ！

WSLの導入はMicrosoft公式がわかりやすいです。
[Windows 10 用 Windows Subsystem for Linux のインストール ガイド(Microsoft)](https://docs.microsoft.com/ja-jp/windows/wsl/install-win10)

Microsoft StoreでダウンロードするLinuxディストリビューションはubuntu18.04がおすすめ。
ダウンロードが終わったら起動して初回セットアップを行いましょう。

# 2. Windows Insider Programに参加
ここからは[WSL 2 のインストール手順(Microsoft)](https://docs.microsoft.com/ja-jp/windows/wsl/wsl2-install#enable-the-virtual-machine-platform-optional-component-and-make-sure-wsl-is-enabled)の冒頭の動画の流れで進めていきます。
ここではPreviewビルドの選択でミスりがちです。
設定アプリを開く→更新とセキュリティ→Windows Insider Program
![kore.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/123137/63087d04-526d-6c66-47aa-5d24d708e19c.png)
後は必要情報を入力していくだけですが、**Previewビルドの選択画面ではファストを選択**しましょう。
スローの場合ビルド番号が足りず、WSL2の要件を満たせません。(2020/03/30時点)
![fast.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/123137/a07d1060-7bac-7dc3-9fd9-603cd1a85f36.png)

# 3. OSをアップデート
登録が終わった後はOSを更新しましょう。[Windows 10 のダウンロード(Microsoft)](https://www.microsoft.com/ja-jp/software-download/windows10%E3%80%80)の今すぐアップデートから更新アシスタントプログラムを取得します。下の画像（1枚目）のような画面が出つつ、2枚目のように更新プログラムのチェックで最新の状態と出ればOK。2枚目赤枠のOSビルド情報を見てみましょう。

![asistant.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/123137/03f2017f-8771-6861-4b92-eaf5b8be9ddd.png)
![update.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/123137/5cf2f842-6148-26db-7879-f0a9d2f2f2f1.png)

OSビルドが18917より大きくなっていればばっちし。
![build.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/123137/fee99a70-aed3-f3f1-ab94-2cf820f87eab.png)

# 4. WSL2の導入
この部分は[WSL 2 のインストール手順(Microsoft)](https://docs.microsoft.com/ja-jp/windows/wsl/wsl2-install#enable-the-virtual-machine-platform-optional-component-and-make-sure-wsl-is-enabled)の動画より下の部分のコマンドを実行していくだけです。
コマンドプロンプトでwsl -l -vでエラーが出る場合は導入がうまくいってません。
そもそもwslコマンドも実行できないよ…という方は1章にてWSLの導入を行ってください。

# 5. Visual Studio Codeの導入
おめでとうございます。ここまで来ればエンジョイDockerライフはあと少しです。
[Visual Studio Code(Microsoft)](https://azure.microsoft.com/ja-jp/products/visual-studio-code/)から、Visual Studioをダウンロードしましょう。
インストールが完了したらコマンドプロンプトから

```
Wsl
code .
```

起動したVisual Studio Codeの左下に![hidari.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/123137/2e8b83af-39e7-e48e-2e0e-87089e9ad7c0.png)という記述があればWSLにリモート接続した開発環境の出来上がりです。


# 6. Docker Desktop for Windows Edgeの導入
あとはDocker Desktopを導入して終了です。[Docker Desktop Edge(Docker)](https://download.docker.com/win/edge/Docker%20Desktop%20Installer.exe)からDocker Desktopをダウンロードしましょう。

```
>docker -v
Docker version 19.03.8, build afacb8b
```
コマンドプロンプトにてこのような表示がでればばっちりです。
Visual StudioのRemote Container拡張機能を入れるなりして便利に開発しましょう！


# 最後に
できるだけ丁寧に解説したつもりですが、いかがでしたでしょうか？
内定先を獲得できないまま今年の3月に卒業してしまったニートの拙い文ですが、皆様の力のご助力になれば幸いです。
アプリエンジニアとして働ける都内の会社さん探してます。

# 参考およびリンク集
記事内
①[Windows 10 用 Windows Subsystem for Linux のインストール ガイド(Microsoft)](https://docs.microsoft.com/ja-jp/windows/wsl/install-win10)
②[WSL 2 のインストール手順(Microsoft)](https://docs.microsoft.com/ja-jp/windows/wsl/wsl2-install#enable-the-virtual-machine-platform-optional-component-and-make-sure-wsl-is-enabled)
③[Windows 10 のダウンロード(Microsoft)](https://www.microsoft.com/ja-jp/software-download/windows10%E3%80%80)
④[Visual Studio Code(Microsoft)](https://azure.microsoft.com/ja-jp/products/visual-studio-code/)
⑤[Docker Desktop Edge(Docker)](https://download.docker.com/win/edge/Docker%20Desktop%20Installer.exe)

その他参考
①[Docker Desktop for WSL2 を使い快適にWindowsでサーバ開発をしよう！(Qiita)](https://qiita.com/YukiMiyatake/items/c7896a0fc5abfa6c2300)
②[Windows10 HomeでDocker Desktop for Windows Edgeを試してみる(Qiita)](https://qiita.com/kakukakupori/items/23be793c1a9807f2b5a8)
③[Docker Desktop for Windows Home is here!(Docker)](https://www.docker.com/blog/docker-desktop-for-windows-home-is-here/)
④[WSL2入れてみた(Qiita)](https://qiita.com/TsuyoshiUshio@github/items/947301bd9317610572fc)