513
Help us understand the problem. What are the problem?

posted at

updated at

WindowsでDocker環境を試してみる

概要

軽量と話題のDockerを自分の作業PC Windows10にインストールして試してみる
WindowsでDockerを動かすためにはいくつかの方法があるみたいだけど今回試してみたのはDocker for Windows

↓のスペックでDocker for Windowsがサクサク動くのかどうか、、、

  • Windows 10 Pro 64bit
  • Intel Core m3 CPU @ 0.90GHz 1.51 GHz
  • メモリ 4GB

2022年1月:
ずっとHyper-V版使用していましたが、Docker Desktop WSL 2 バックエンド版としてこの投稿の記載内容刷新しました!
↓に書いてある通りですが、特にリソース消費を劇的に改善していますに感動しました!!

https://matsuand.github.io/docs.docker.jp.onthefly/desktop/windows/wsl/
image.png

注意事項

上記黄色枠記載の通りですが、Docker Desktopは、2022年2月1日から有料化されます。
ただし、従業員数250人未満、年間収益1,000万ドル未満、個人使用、教育目的、非商用のオープンソースプロジェクトで利用可能なので、その範囲内で利用しましょう。

できるようになること

  • Windows10環境でのDocker環境の構築

参考書籍

わかりやすくてDockerの入門書的な良本です^^

プログラマのためのDocker教科書 第3章

【Kindle版】プログラマのためのDocker教科書

Docker管理(Kubernetes)まで含めるとこちら↓

仕組みと使い方がわかる Docker&Kubernetesのきほんのきほん

【Kindle版】仕組みと使い方がわかる Docker&Kubernetesのきほんのきほん

およその作業時間

30分

動作システム要件

  • 64 bit Windows 10 Pro, Enterprise, Education
  • CPU仮想化 有効 image.png

合わせて以下の手順のチェックと有効化のためにPC再起動を行う

  1. Windows ボタンを右クリックし、[アプリと機能] を選択
  2. 右側の関連する設定にある [プログラムと機能] を選択
  3. [Windows の機能の有効化または無効化] を選択
  4. [Virtual Machine Platform] [Windows Subsystem for linux] を選択して、[OK] をクリック

image.png

必要な知識

  • Docker知識^^;

インストール手順

以下のサイトからDocker Desktop Installer.exeをダウンロードしてインストール後、インストールされたDocker Desktopを実行するだけ
WSL 2 の事前インストールが必要な記載もドキュメント上にありましたが、Docker Desktop Installer.exe の中でインストールされたので事前インストール不要で大丈夫でした。
私は以下の状態(WSL 2インストールされていない状態)でインストールしています

>wsl --list --verbose
LinuxWindows サブシステムには、ディストリビューションがインストールされていません。
ディストリビューションは Microsoft Store にアクセスしてインストールすることができます:
https://aka.ms/wslstore

[公式ページ:インストール手順]
https://docs.docker.jp/docker-for-windows/install.html
[公式ページ:ダウンロードサイト]
https://hub.docker.com/editions/community/docker-ce-desktop-windows/

image.png
image.png

インストール手順詳細

Docker Desktop Installer.exe をクリックして画面に従っていくだけです!

image.png
最初にWSL 2のインストールチェックボックスがあるのでチェックしておきます。
後はインストールが終わるのを待つだけ。。。
image.png
最後に同意画面が表示されるので内容確認、チェック、Acceptします。
以上です。

インストールが完了したらWindowsのスタートメニューからDocker Desktop起動してみましょう。
ここからのtutorialDashboadがまた感動でした!
ちなみにこの時点でWSL 2がインストールされてました。

>wsl -l -v
  NAME                   STATE           VERSION
* docker-desktop         Running         2
  docker-desktop-data    Running         2

Docker Desktop起動

image.png
起動してます(1、2分待ちます)

image.png
なるほど。2分のtutorialがある。2分であればやってみましょう。
ということでStartボタン

image.png
左画面の説明、右画面のプロンプトというスタイルでtutorialが進みます。
プロジェクトという概念があって、git リポジトリにサンプルプロジェクトがあるようですね。
tutorialの通りコマンド実行します。(画面中央のコマンドが書かれた青いボタンを押すと勝手に実行されます)
右画面でコマンド実行が終わったらNext Stepをクリック。

image.png
プロジェクトが出来上がったらビルドするようです。
右画面でコマンド実行が終わったらNext Stepをクリック。

image.png
最後にrun(Dockerイメージを起動)します。
これで起動するようです(ほんとに?)とりあえずtutorialを進めます。

image.png
最後は自分でDockerイメージ変更したらShareしようね。ということなのでこのコマンドは実行せず(実行できないようにボタン押下できませんでした)、Doneで終了です。
諸々のダウンロード時間があったので2分では正直終わらなかったですが、そうは言っても5分くらいでした。

image.png
で、次に表示されたのがこれから大変お世話になるDashboad画面でした。
とりあえずrunnningしているappがBrowserで動くよ。ということでクリック。

image.png
おぉ!ほんとに動いてました!!ちょー簡単。

image.png

Dashboadに戻って他を確認してみると。。。
左から

  • OPEN IN BROWSER
  • CLI
  • START(or STOP)
  • RESTART
  • DELETE

のようです。いつの間に1つ1つコマンド実行する時代じゃなくなってたのですね^^;
CLIボタン押すと、Docker上のプロンプトが立ち上がって超便利。
image.png

インストールとtutorial以上です。Dashboad便利そうですね!

では、結果

メモリ使用量

【Docker Desktop起動前】
image.png
最近メモリ残があまりなく。。。Docker Desktop起動するかな。。。

【Docker Desktop起動後】
image.png
おぉ起動しました!以前は最低1GB必要だったのに!!
この後、Dockerイメージ起動しましたが、微増でした。公式ページ記載の通り、使った分だけ(動的割当)ということですね。

【Docker Desktop起動後しばらく放置】
image.png
ここまで下がりました。
起動時3.2GB、放置で3.5GBなので、実質0.3GBのメモリでOK!?
凄い!この軽さでDocker(と、Dashboad)が起動できるのは感動です!!

起動時間

・Docker Desktop起動時間:約1分!

・コンテナ起動時間(初回):約2分
 以下のコマンドをコマンドプロンプトで実行してubuntuコンテナを起動
 初回はDocker Hubからイメージのダウンロードをしてくれるため時間がかかる
 それでも2,3分程度(ネットワーク環境に依存)

> docker run -it ubuntu bash

・コンテナ起動時間(2回目以降):3秒!!
 2回目以降はローカルキャッシュしているイメージを使うため3秒と言わず一瞬^^

Docker Desktop上の画面にも自動で追加されました。
image.png

コンテナのページも以下の通り追加されました。
image.png

まとめ

確かにサクサク動く!
Docker Desktop WSL 2 バックエンド版、Dashboadで劇的進化してました!!
私のDocker Desktop 知識 Update していなかった時間が長かっただけに進化にびっくりで大興奮でした^^

参考

Docker全体像のイメージ図は以下を参照

 Dockerの基本機能と全体像のイメージを整理してみる

EC2でもやってみました

 AWS EC2 でDocker環境を無料で試してみる

AWS ECSでもやってみました

 AWS ECSでDocker環境を試してみる

Docker管理(Kubernetes)の勉強はこちら

仕組みと使い方がわかる Docker&Kubernetesのきほんのきほん

【Kindle版】仕組みと使い方がわかる Docker&Kubernetesのきほんのきほん

Dockerをさらに勉強したい方は以下を参照
参考書籍がわかりやすかったので実際にやってみました
[参考書籍]

 WindowsでDocker Hubからイメージをダウンロードしたりアップロードしたりしてみる
 Docker for Windowsでイメージからコンテナを生成/操作してみる
 Windowsで構成情報をDockerfileに定義してイメージを作成してみる
 WindowsでDocker Composeを使ってマルチコンテナ環境を作ってみる
 WindowsでDocker Machineを試してみる

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
513
Help us understand the problem. What are the problem?