[Docker] Docker For Windowsをセットアップしてみた (Docker初心者向け)

# はじめに
数年前WindowsマシンにDocker環境を作ろうと何か(ツール名は忘れた・・・)をインストールしたときCygwin環境が壊されてしまったこともあり、何となくWindows上でDockerを使うことから遠ざかっていました。
久々にDockerのサイトを見てみるとWindowsのHyper-Vを使ってDocker環境を実現する「[Docker For Windows](https://www.docker.com/docker-windows)」なるものがリリースされており、これなら環境を壊される心配もなさそうだったのでいまさらですがWindowマシンにDocker環境を作ってみることにしました。本稿ではDocker For Windowsをインストールして動かすまでに引っかかったポイントを備忘録としてまとめています。

# 必要な環境
Windows 10 ProfessionalまたはEnterprise 64-bit

# インストールの前に

インストールの前に以下の２点を確認します。

### WindowsのHyper-Vが有効になっていること
- スタートボタン右クリック -> [プログラムと機能] -> [Windowsの機能の有効化または無効化]で[Windowsの機能]を開き、 [Hyper-V]にチェックが入っていなければチェックして有効にします。この変更は再起動が必要かつ構成変更で時間がかかるので、作業中の場合は注意してください。

![2017-10-16_13h10_07.png](https://qiita-image-store.s3.amazonaws.com/0/171575/0ee51fb1-30cc-76ea-f64b-1733eca22bc6.png)


### BIOSの仮想化が有効になっていること
- タスクマネージャの[パフォーマンス]タブの右下に[仮想化]という項目があります。これが[無効]になっていればBIOS設定画面で仮想化に関する設定(Virtualizationなど)を探して有効にします。

![2017-10-16_11h27_03.png](https://qiita-image-store.s3.amazonaws.com/0/171575/2da79a71-5060-d9cf-ab04-86ad4fb210ac.png)

# いざインストール

Hyper-Vと仮想化が有効にできたら、Docker For Windowsをインストールします。

1) こちらからダウンロード
https://store.docker.com/editions/community/docker-ce-desktop-windows

2) 初心者なので「Stable channel」を選択

3) ダウンロードしたインストーラを起動するとすぐにインストールが開始されます。インストール中は特に選択することはありません。ファイルのコピーが始まりそして完了。画面キャプチャを取る時間すらありませんでした。

![2017-10-16_09h43_49.png](https://qiita-image-store.s3.amazonaws.com/0/171575/ae3cb9c8-b125-dfcd-c047-0d182d20472f.png)

デスクトップにDockerのアイコンが作成されます。またタスクトレイにDockerが起動中であることを示すメッセージが表示されます。正常に起動したら「Docker is running」というメッセージが表示されます。
![2017-10-16_09h46_22.png](https://qiita-image-store.s3.amazonaws.com/0/171575/63624e56-a14c-7f15-2485-86695f2697be.png)

![2017-10-16_09h46_38.png](https://qiita-image-store.s3.amazonaws.com/0/171575/58991123-d261-9cac-1690-a9781ac76c48.png)


4) PowerShellで確認します。パスへの登録もすべてインストーラがやってくれるので非常に楽チンです。
![2017-10-16_12h59_33.png](https://qiita-image-store.s3.amazonaws.com/0/171575/87248659-e06a-1cf1-aa98-8edd4e3672ac.png)

### セットアップ中にこんなエラーがでたら・・・

事前準備でHyper-Vが有効になっていない場合は以下のエラーメッセージが表示されるので「Ok」を押して有効にします。(その後再起動されるので、作業中の場合は「Cancel」を押して手動で有効にします)
![2017-10-16_09h46_49.png](https://qiita-image-store.s3.amazonaws.com/0/171575/8611f09e-c47b-5d93-75d3-40fe34578a8d.png)

またBIOSでVirtualizationが有効になってない場合は以下のエラーが表示されるのでBIOS設定で有効にします。
![2017-10-16_09h55_41.png](https://qiita-image-store.s3.amazonaws.com/0/171575/8fc0ed7d-55ac-1075-9d41-98b339b8cb41.png)


# とりあえずプロキシを設定しておきます

社内ネットワークでは必須のプロキシの設定もわかりやすいところにありました。
タスクトレイのDockerアイコンを右クリック -> [Settings...] -> [Network]
※プロキシ設定後にDockerが再起動されます。

![2017-10-16_10h51_34.png](https://qiita-image-store.s3.amazonaws.com/0/171575/764c110e-087e-218d-9785-ad7fbc8d0a2c.png)

# Kitematicをインストールしましょう

Dockerイメージのインストールや管理がGUIで行えるKitematicをいれておくと便利です。
タスクトレイのDockerアイコンを右クリック -> [Kitematic]でダウンロードするか確認するダイアログが表示されます。
ダウンロードしたファイルを展開し、Dockerのインストールフォルダ`C:\Program Files\Docker`配下に`Kitematic`という名前でコピーします。コピーした後、同様の操作(Dockerアイコン右クリック -> Kitematic)でKitematicが起動されます。

![2017-10-16_12h54_48.png](https://qiita-image-store.s3.amazonaws.com/0/171575/48a0f1b0-8621-2b40-7ab3-00c678c4a95d.png)

# おわりに

Hyper-Vと仮想化の有効化以外はすんなりとセットアップすることができました。Kitematicも便利そうなのでこれからいろいろ遊んでみようと思います。