まとめた事
以下の疑問点についてまとめました。
- docker toolbox と docker for windowsの違いは?
- 同じ事をするのに複数コマンドが存在する?
- docker-machine とは? Dockerエンジンとの違いは?
用語について
用語 | 説明 |
---|---|
Dockerエンジン | 仮想環境を提供するための3つの主なコンポーネントを持つクライアント・サーバ型アプリケーション |
Dockerホスト | Dockerエンジンが動くホスト |
DockerToolbox | Windowsアプリケーション。仮想環境としてVirtualBoxを利用 |
Docker for Windows | Windowsアプリケーション。仮想環境としてHyper-Vを利用 |
docker-machine | ホストPCにDockerの実行環境を構築するツール |
DockerはLinuxのみ動作可能。Windowsでは仮想環境のLinux VMからDockerを利用する。Dockerを利用するためのアプリケーションとして、DockerToolbox と Docker for Windows の2つが利用できる。
- DockerToolbox
- メリット:
Windows10 Pro以外からも利用できる。Virtualboxと共存可能。 - デメリット:
Visual Studio CodeのDocker拡張機能が利用不可。
- メリット:
- Docker for Windows
- メリット:
Visual Studio CodeのDocker拡張機能が利用可。DockerホストをWindowsコマンドから操作できる - デメリット:
Windows10 Proのみ。Virtualboxと共存不可。
- メリット:
参考:
- http://docs.docker.jp/v1.12/engine/understanding-docker.html
- http://docs.docker.jp/
全体像
新コマンドをベースに以下の3つのグループに分類して全体の流れを書いています。
- docker-machine
- docker image
- docker container
新コマンドとは
Docker v1.13以降(2017年1月18日にリリース)、 docker コマンドラインの命令体系が再編成されたため現在新旧のコマンドが混在している。
例
旧コマンド | 新コマンド | 説明 |
---|---|---|
docker ps | docker container ls | コンテナ一覧の表示 |
docker images | docker image ls | イメージ一覧表示 |
参考: docker container / image コマンド新旧比較
まとめ
- docker toolbox と docker for windowsの違いは?
Dockerの実行環境を作成する目的は同じだが、それぞれメリットとデメリットがある。特に理由がなければDocker for Windowsが良さそう。 - 同じ事をするのに複数コマンドが存在する?
コマンドラインの体系が再編成されたので新旧が混在している。 - docker-machine とは? Dockerエンジンとの違いは?
Dockerエンジンは仮想環境を提供するためのアプリケーション。docker-machineはDockerエンジンが動作する環境を作成するためのコマンド。