LoginSignup
3
3

More than 3 years have passed since last update.

Windows10 Home Edition でDockerが使用可能に

Last updated at Posted at 2020-04-07

はじめに

2020/3月末 Windows 10 HomeでWSL2が使用できることになり、Docker desktopに対応することが出来るようになりました。また、WSL2によるDockerの使用は、Hyper-Vを用いた方法よりも15倍速い速度となるため、より軽い処理で実現できます。ただし、OSを開発者verで入れないといけないこと、Dockerも現状edgeという正式版での対応はまだであることから、多少のリスクを伴うため、ユーザーが安心して導入するのはまだしばらく時間がかかりそうです。(2020/4/7時点)
今回は開発版でDockerを入れてみた場合の操作を記載します。

この記事を読んでもらいたい方

Windows ユーザーでDockerをこれから使いたいエンジニア
もう既にDockerをVMWare等で使用しているエンジニア
Windows 10 pro もしくはEnterprise しか対応してなかったので、Dockerを使えなかったと思っているエンジニア

注意事項

上記でもアナウンスしましたが、これからWindowsに開発版のOSを入れていきます。
製品版に近いものの、万一OSに問題があった場合、再度OSを入れなおします。その際のフォーマット化に伴い内部ストレージのデータが消えることが予想されます。
必要なデータは外付けHDD or クラウド上に保存するようにして、十分ご理解の上実行してください。

作業時間

約半日

概要

1.WindowsOSのversion確認
2.Windows Insider Program(slowRing)にする
3.WSL と Virtual Machine Platform の有効化
4.Linux ディストリビューションの取得および開発者
5.WSL2のデフォルト化とUbuntu<=>WSL2間の接続
6.VScode<=>Ubuntu間の接続
7.Docker Desktopのinstall
8.Dockerの接続を確認

手順

1.WindowsOSのversion確認

WindowsOSが10 かつ  ver18917以上であることをコマンドプロンプトから、verコマンドで確認しましょう。

Windows_ver.jpg
versionが低い場合は更新→再起動してください。

2.Windows Insider Program(slowRing)にする

Microsoftアカウントの登録→ログインから、Insider Programに登録してください。
slowRing とfastRingの違いについて
登録されると以下のガイダンスがでますので、手順に従ってインストールします。
registrated_insider_preview.jpg

↓[スタート] -[設定] - [更新とセキュリティ]に入って、Insider Programへ
[スタート] -[設定] - [更新とセキュリティ] -Windows Insider Program.jpg
↓[開始]を押してアカウントをリンクさせます
account_Link.jpg
↓Insiderはスローを選択しましょう
account_Link3.jpg

3.WSL と Virtual Machine Platform の有効化

管理者権限でPowerShellを立ち上げ、下記コマンドを実行

#WSLの有効化
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
#Virtual Machine Platformの有効化
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

一度再起動します。(先ほど実行したInsider Program slow.verも有効化します)

その後、WSL2カーネルの更新を行います。
こちら参考にダウンロード→update→再起動するだけ
※ARM64=x64です
※自分のPCがx64かどうかの確認は、「設定」→「システム」→「バージョン情報」で確認できます。
今後Microsoftはこのような手動でのUpdateはやめ、定常的なWindowsのUpdateにこの操作を内部に組み込むとのことです。

4.Linux ディストリビューションの取得および初期設定

Windows MicrosoftstoreからUbuntuをinstall
私はUbuntu-18.04をinstallしました。
Ubuntuの初期設定はこちらが参考になりました。
image.png

5.WSL2のデフォルト化とUbuntu<=>WSL2間の接続

#Ubuntu<=>WSL2間の接続
PS C:>wsl --set-version Ubuntu-18.04 2
#WSL2のデフォルト化
PS C:>wsl --set-default-version 2

↓こんな感じになります。
WSL2_upgrade_success.jpg

接続を確認しましょう。

#Ubuntuに接続
PS C:>wsl
#Logoutの確認
PS C:>exit

Ubuntu初期設定後、WSL2環境のUbuntuを操作している状態でファイルを共有します(つまり、LocalのファイルをLinuxコマンドで動作させれるように同期します)
Ubuntuを開き、↓を実行します。
ちなみに実行後、フォルダが開くので、ショートカットを作成しておくと、Localからファイルを触れるようになりますよ。

explorer.exe .

6.VScode<=>Ubuntu間の接続

VScodeの画面左下「><」こんなのをクリック。「Remote-WSL: New Window」を選択してやると、デフォルトに設定しているUbuntuに接続されます。画像の右のようになればOKです。
VS-code.jpg

7.Docker Desktopのinstall

やっとDockerに入ってきました。あと少しです。
Docker Desktop for Windowsをinstallしましょう。こちらのEdgeをinstallします。(stableは試しましたが、まだ対応できてませんでした。今後に期待!)
image.png

※Docker Desktop のtutorialの注意点とインテグレーション
最初の接続先はPowerShellになってるかと思います。
その場合はwslでUbuntuに切り替えて、Dockerのコマンドを流し込んでいきましょう。
↓tutorialが終わったところから始めます。
defaultの接続先(Resources)をUbuntuにしときましょう。(インテグレーション)
image.png

8.Dockerの接続を確認

tutorialが終われば、PCの立ち上げと同時に自動で立ち上がるようになります。

Ubuntuを起動し、↓下記コマンドを実行。

#nginxを立ち上げます
docker run -p 80:80 nginx
#終了を確認(接続状況を確認)
docker ps
#もし、終了していないdockerがあればこれで接続を切ります
docker kill [CONTAINER ID]

localhostに接続を確認します。→Ctrl + C で終了
↓これがでたらOKです。
welcome_to_enginx.jpg

お疲れ様でした。

参考にしたサイト

「WSL 2」は「Windows 10 Home」でも利用可能 ~MicrosoftがFAQを掲載(ニュース記事)
https://forest.watch.impress.co.jp/docs/news/1184353.html
「WSL2とHyper-Vの速度比較について」
https://www.docker.com/blog/new-docker-desktop-wsl2-backend/
「Installation Instructions for WSL 2」
https://docs.microsoft.com/en-us/windows/wsl/wsl2-install
「WSL2入れてみた」
https://qiita.com/TsuyoshiUshio@github/items/947301bd9317610572fc
「windows10のversion.update」
https://support.microsoft.com/ja-jp/help/4027667/windows-10-update
「WindowsカーネルのUpdate方法」
https://japan.zdnet.com/article/35150847/
「Microsoftのカーネル管理方法の意向」
https://news.mynavi.jp/article/20200316-997109/
「Windows Insider ProgramのFast slowの違い」
https://ascii.jp/elem/000/001/099/1099995/
「Windows Insider preview」
https://insider.windows.com/ja-jp/how-to-pc/
「Windows Subsystem for Linuxディストリビューションのインストール」
https://qiita.com/Aruneko/items/c79810b0b015bebf30bb#
「UbuntuとLocalディレクトリとの同期(/home/user/でexplorer.exe .)」
https://note.com/akazawa_studio/n/nda7b97038e5c
「Dockerのinstall(edge版をinstallすること。homeは現在2020/4で開発verしか対応できていない)」
https://hub.docker.com/editions/community/docker-ce-desktop-window
「Docker tutorial」
https://qiita.com/wMETAw/items/8d1b0c053a39841765bf

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3