4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Windows10にDockerをインストール

Last updated at Posted at 2021-12-12

今日は、Parallelsで作成済みのWindows10仮想マシンにDockerをインストールしたいと思います。
先日の投稿を見て頂いた方はご存知とは思いますが、当初はParallelsでUbuntu仮想マシンを作成し、そこにDockerをインストールして開発環境を構築しようとしておりました。もっと言うと、その環境のDockerへVSCodeの"Remote - Containers"拡張機能で接続してプログラミングする環境を構築したかったのです。

しかし、1つ勘違いしている事に気づいてしまいました。それは、"Remote-Containers"拡張機能で自分用の開発環境を構築するなら、Windows10またはmacOSにVSCodeとDockerを同居させてスタンドアロン環境にする方が一般的なのではないかという事に。色々調べている際、"Remote - Containers"拡張機能のデフォルトのリモート接続先がlocalhostだという事が分かった時に気づきました。
という事で、Windows10仮想マシン環境で一からやり直したいと思います。随分と遠回りになってしまった。

#環境周りの情報
以前の投稿に記載した内容と重複するが、再度おさらいしておきます。

母艦のMacはiMac(Retina 5K, 27-inch, 2019)の一番安い構成のもの。後付けでメモリを16GB×2枚追加して40GBにしてあります。その他の細かいスペックは割愛します。

  • ホストOSは、macOS Monterey
  • 仮想化環境ソフトは、Parallels Desktop 17 for Mac Pro Edition
  • 仮想マシンの構成は、2CPU、8GBメモリ、256GBストレージ(128GBで十分かも)
  • ゲストOSは、Windows10 Pro 64bitで、21H1適応済み

Parallels DesktopがPro Editionなのは、Windows10仮想マシンでDocker環境を構築するのに必要な機能がStandard Editionでは利用できなかった為。詳細は後述する。

#インストール手順
それではまず、ParallelsでWindows10仮想マシンを起動。
スクリーンショット1.png

###Windowsの機能の有効化
コントロールパネルを開き、[プログラム]→[プログラムと機能]と開き、[Windowsの機能の有効化または無効化]リンクをクリック。
スクリーンショット2.png
[Linux用Windowsサブシステム]と[仮想マシンプラットフォーム]にチェックを付けて[OK]ボタンをクリック。
スクリーンショット3.png
「必要な変更が完了しました。」と表示されたら、[今すぐ再起動]ボタンをクリック。
スクリーンショット4.png

###WSL2のアップデート
再起動が終わったら、WSL2(Windows Subsystem for Linux 2)のアップデートを行う。
まず、下記のURLへアクセスし、アップデートプログラムをダウンロードする。
 https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

ダウンロードが終わったら、ファイルをダブルクリックし、インストーラーを起動する。
インストーラーが起動したら[Next]ボタンをクリックする。
スクリーンショット5.png
アップデートが始まる。
アップデートが完了したら[Finish]ボタンをクリックする。
スクリーンショット6.png

###Docker Desktop for Windowsのインストール
いよいよDocker本体のインストールをしていく。
まず、下記のURLへアクセスし、Docker Desktop for Windowsをダウンロードする。
 https://hub.docker.com/editions/community/docker-ce-desktop-windows/
スクリーンショット7.png
ダウンロードが終わったら、ファイルをダブルクリックし、インストーラーを起動する。
Configuration画面が表示されるので、[OK]ボタンをクリックする。
スクリーンショット8.png
インストールが開始する。
インストールが完了したら[Close]ボタンをクリックする。
スクリーンショット9.png

###Docker Desktopの起動確認
デスクトップに作成されたDocker Desktopアイコンをダブルクリックし、Docker Desktopを起動してみる。
規約について同意を求められるので、同意するとDocker Desktopの画面が起動するが、Docker Engineの起動に失敗してしまう。
スクリーンショット10.png
このエラーに関して、色々調べてみた結果、ParallelsのWindows10仮想マシンの構成画面より、ネストされた仮想化を有効にする必要がある事が判明。しかも、この機能はParallels DesktopのPro Editionじゃないと使用できない。仕方ないので、Pro Editionにアップグレード。
これが本投稿の冒頭で述べた「Parallels DesktopをPro Editionにしている」理由。
ネストされた仮想化を有効にするには、Parallels DesktopでWindows10仮想マシンの構成画面を開き、[ハードウェア]→[CPUおよびメモリ]の[詳細]ボタンをクリックし、[ネストされた仮想化を有効にする]にチェックを入れればよい。ハマりポイントなのでご注意を!
スクリーンショット11.png
Windows10仮想マシンを起動し、気を取り直して、再度Docker Desktopを起動してみる。
今度は無事起動した。
初回起動ではチュートリアルを見るように促されるが、私はスキップした。見たい人はご自由にどうぞ。
スクリーンショット12.png
Dockerの設定を確認してみる。画面上部の[⚙]マークをクリック。
スクリーンショット13.png
下記赤枠項目は確認しておいた方が良いと思う。
スクリーンショット14.png
項目の意味は以下の通り。

項目 意味
Start Docker Desktop when you log in DockerDesktopのスタートアップに登録するかどうか。これはどちらでも好きなようにどうぞ
Use the WSL 2 based engine DockerをWSL2ベースで使用するかどうか。これは基本的にONにする。昔はHyper-Vベースだったらしいが今はこちらが主流
Use Docker Compose V2 バージョン2以降のDocker Composeを使用するかどうか。これは各自の状況に合わせてご自由にどうぞ

一応、コマンドプロンプトを起動し、dockerコマンドとdocker composeコマンドでも動作確認してみる。

実行コマンド
docker version
表示される結果
Client:
 Cloud integration: v1.0.22
 Version:           20.10.11
 API version:       1.41
 Go version:        go1.16.10
 Git commit:        dea9396
 Built:             Thu Nov 18 00:42:51 2021
 OS/Arch:           windows/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.11
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.9
  Git commit:       847da18
  Built:            Thu Nov 18 00:35:39 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.12
  GitCommit:        7b11cfaabd73bb80907dd23182b9347b4245eb5d
 runc:
  Version:          1.0.2
  GitCommit:        v1.0.2-0-g52b36a2
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
実行コマンド
docker compose version
表示される結果
Docker Compose version v2.2.1

無事動作した。
お疲れ様でした!

4
4
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
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?