2016年8月に正式リリースされた Docker for Mac/Windows。
勉強もかねて、Docker for Mac とそれまでの Docker Toolbox との違いをまとめました。
まとめ
Docker「これからはコンテナより下の部分についてはDocker for Mac/windows を使ってね!そのほうが高速だし、楽ちんだよ」
(ということだと思う)
Docker for Mac
- Mac のネイティブアプリケーションであり、
/Applications
にインストールされる - インストール時に
/usr/local/bin
にdocker
とdocker-compose
にシンボリックリンクが貼られる。実体はネイティブアプリケーション内にある(/Applications/Docker.app/Contents/Resources/bin
) - Docker for Mac は Docker社が公開したオープンソースの軽量な仮想化ツール「Hyperkit」で動く(VirtualBoxは使わない!)
- Hyperkitは、macOS 10.10 Yosemite から実装されている仮想化フレームワーク「Hypervisor Framework」を利用しているので、macOS 10.10 以上でしか使えない 「Hyperkit」である VirtualBoxを使わず、
- Docker for Macをインストールしても、Docker Machine で作成されたマシンには影響を与えない。
- Docker for Mac アプリケーションは、
docker-machine
は使わず、直接VMを作成し、管理する - Docker for Mac のインストール時に Docker Engine が動いている Alphine Linux ベースの Hyperkit VM がプロビジョンされ、ソケット
/var/run/docker.sock
と通信できるようになる。それ以降、docker
コマンドやdocker-compose
コマンドで環境の指定をしない限り、デフォルトで呼ばれることになる。 - Docker for Mac をインストールすると、唯一の VM を手に入れたことになり、管理する必要はなくなる。Docker for Mac アプリケーションが Docker のサーバー、クライアントバージョンを自動でアップデートする。
Docker Toolbox
- Docker Toolbox をインストールすると、
docker
,docker-compose
,docker-machine
が/usr/local/bin
にインストールされ、VirtualBoxもインストールされる。 docker-machine
コマンドを使って、VirtualBox VM であるdefault
ホストをプロビジョニングしていた- この VM では、
boot2docker
という Linux Distribution で Docker Engine が動く。
- この VM では、