Windows10でDocker環境構築手順 

Windows 10 HomeだとDockerをインストールできないので、Pro以上のライセンスを用意する。

# Docker Desktop for Windows のインストール

① インストラーをダウンロード

ダウンロードサイト
https://hub.docker.com/editions/community/docker-ce-desktop-windows/

右リンク「Get Docker」→ 「Docker Desktop Installer.exe」を格納

②インストラーを実行


# dockerhub でアカウント作成

① Docker Hubにアクセス
「Docker ID」「Email」「Password」を入力してサインアップ

|![01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/9b08efc2-1d34-3bad-409c-be47dae48579.jpeg)|
:-:|


② Communityプランを選択

|![02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/39bc8b8c-1cd0-ee19-84de-800f416d9c1c.jpeg)|
:-:|


③ メールが届くので「Verify email address」をクリック

|![03.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/7fc1895e-d5e3-c9ef-97f5-f325011f9196.jpeg)|
:-:|

④ サインアップが完了する

|![04.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/61e8d01e-3a41-a052-2ff0-9e84f4ba656d.jpeg)|
:-:|

# インストーラーを実行

① インストールのための設定
![01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/c980ec57-7c5e-177c-9f7d-011905ff44bb.jpeg)

Enable required Windows Features：必要なWindows機能を有効にする
Add shortcut to desktop：デスクトップにショートカットを作成する
Use Windwos containers instead of Linux containers (this can be changed after installation)：Linuxコンテナの代わりにWindowsコンテナを使用する（後で変更可能）

② インストール開始
![02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/78b7fef9-cf63-6f58-d010-9a475a16ca14.jpeg)


③ インストール完了（PC再起動）
![03.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/5fa6f7ce-adca-5d83-8356-7098a0cb946e.jpeg)

④ 再起動後、Dockerが起動する
![04.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/70dfc829-2d26-7a02-da31-d9a08d048d55.jpeg)

# インストール後の設定

① DockerのWelcomeウィンドウで Docker IDを入力してログインする

② インジケータ―（常駐プログラム欄）にDockerがアイコンが表示される。
Dockerアイコンをクリックし、「Settings」を選択する。
![11.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/68711818-cbdd-d79f-86d8-fc515ab20642.jpeg)

③ 必要に応じて以下の設定を変更する。

・Settings > Resources ：CPUやメモリなどの資源割り当ての調整

|![12.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/2e9ff463-d446-94ff-3aa2-560d6779a942.jpeg)|
:-:|

・Settings > Resources > FILE SHARING：Dockerコンテナからマウントできるドライブを選択

|![13.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/8ab81302-5874-b754-4ac6-1ed1d737c001.jpeg)|
:-:|

・Setting > Resources > NETWORK：Dockerコンテナに割り当てるネットワーク帯域の設定

|![14.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/30fbdb7f-c2af-4375-550b-d7c006bdfd2b.jpeg)|
:-:|

# 挙動確認

以下のページの内容にしたがって、Dockerの動作を確認する。
[Get started with Docker for Windows](https://docs.docker.com/docker-for-windows/)

① PowerShellを起動する。
ショートカットキーの「Win + R」で「ファイル名を指定して実行」を起動し、「powershell」と入力し実行。
![21.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/363690/0d134561-5146-a7f1-5899-b6245adb3fd6.jpeg)

② バージョン確認

```:PowerShell
> docker --version
Docker version 19.03.8, build afacb8b
```

③ docker runコマンドでイメージを取得し、「hello-world」コンテナを実行する

```:PowerShell
> docker run hello-world

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
0e03bdcc26d7: Pull complete
sha256:8e3114318a995a1ee497790535e7b88365222a21771ae7e53687ad76563e8e76
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/
```

④ 「hello-world」dockerイメージがダウンロードされていることを確認。

```:PowerShell
> docker image ls

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              bf756fb1ae65        3 months ago        13.3kB
```

⑤ 「hello-world」コンテナが作成されていることを確認。

```:PowerShell
> docker container ls --all

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS               NAMES
fd01bc11f602        hello-world         "/hello"            4 minutes ago       Exited (0) 4 minutes ago                       elegant_ramanujan
```