[Docker] Docker for Mac 再入門

あらためて Docker for Mac に再入門します。

## Installation

Docker Desktop for Mac (macOS) は、ハイパーバイザーとして [xhyve](https://github.com/machyve/xhyve) を利用しています。

Docker Desktop for Windows (Microsoft Windows 10) は、[Hyper-V](https://docs.microsoft.com/ja-jp/virtualization/hyper-v-on-windows/about/) を利用しています。
Windows 10 Pro 等で OS 設定を有効化する事で動作させることができますが、他の仮想化ツールは使えなくなるそうです。

では `brew install` で Docker Community Edition をインストールします。

“`prettyprinted
% brew cask install docker
“`

> – [Install Docker Desktop on Mac | Docker Documentation](https://docs.docker.com/docker-for-mac/install/)

インストールが終了すると以下の画面が表示されます。

次にシステムディスクを圧迫しないように Disk image location を事前に変更しておきます。
ツールバーから `Preference > Disk` を選択し変更します。
かなりの時間がかかるのでノンビリ待ちましょう。

## Hello, world!

ではいつものあれで動作確認をしてみます。

“`prettyprinted
% docker container run ubuntu:latest /bin/echo ‘Hello, world!’
Unable to find image ‘ubuntu:latest’ locally
latest: Pulling from library/ubuntu
7ddbc47eeb70: Pull complete
c1bbdc448b72: Pull complete
8c3b70e39044: Pull complete
45d437916d57: Pull complete
Digest: sha256:6e9f67fa63b0323e9a1e587fd71c561ba48a034504fb804fd26fd8800039835d
Status: Downloaded newer image for ubuntu:latest
Hello, world!
“`

Docker のバージョンを確認します。

“`prettyprinted
% docker version
Client: Docker Engine – Community
Version: 19.03.5
API version: 1.40
Go version: go1.12.12
Git commit: 633a0ea
Built: Wed Nov 13 07:22:34 2019
OS/Arch: darwin/amd64
Experimental: false

Server: Docker Engine – Community
Engine:
Version: 19.03.5
API version: 1.40 (minimum version 1.12)
Go version: go1.12.12
Git commit: 633a0ea
Built: Wed Nov 13 07:29:19 2019
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.2.10
GitCommit: b34a5c8af56e510852c35414db4c1f4fa6172339
runc:
Version: 1.0.0-rc8+dev
GitCommit: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
docker-init:
Version: 0.18.0
GitCommit: fec3683
“`

`docker system df`

> – [docker system | Docker Documentation](https://docs.docker.com/engine/reference/commandline/system/)

“`prettyprinted
% docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 1 1 64.19MB 0B (0%)
Containers 1 0 0B 0B
Local Volumes 0 0 0B 0B
Build Cache 0 0 0B 0B
“`