Docker Machine 是 Docker 官方三剑客项目之一, 负责使用 Docker 的第一步, 在多种平台上快速安装 Docker 环境.
它支持多种平台, 让用户在很短时间内搭建一套 Docker 主机集群.
Machine 项目是 Docker 官方的开源项目, 负责实现对 Docker 主机本身进行管理.
Machine 项目主要由 GO 编写, 用户可以在本地任意指定被 Machine 管理的 Docker 主机, 并对其进行操作.
Machine 定位是 "在本地或者云环境中创建 Docker 主机"
Docker Machine 是一个工具, 它允许你在虚拟宿主机上安装 Docker Engine, 并使用 docker-machine 命令管理这些宿主机.
你可以使用 Machine 在你本地的 Mac 或 Windows box, 公司网络, 数据中心, 或像 AWS 这样的云提供商上创建 Docker 宿主机.
使用 docker-machine 命令, 你可以启动, 审查, 停止和重新启动托管的宿主机, 升级 Docker 客户端和守护进程, 并配置 Docker 客户端与你的宿主机通信.
Docker Machine 使你能够在各种 Linux 上配置多个远程 Docker 宿主机.
此外, Machine 允许你在较早的 Mac 或 Windows 系统上运行 Docker.
如果你有一个 Linux 作为你的主系统, 并且想要运行 docker 命令, 你需要做的就是下载并且安装 Docker Engine.
然而, 如果你想要在网络上, 云中甚至本地配置多个 Docker 宿主机, 你需要 Docker Machine.
无论你的主系统是 Mac,Windows 还是 Linux, 你都可以在其上安装 Docker Machine, 并且用 docker-machine 命令来配置和管理大量的 Docker 宿主机.
它会自动创建宿主机, 在其上安装 Docker Engine, 然后配置 docker 客户端.
每个被管理的宿主机 ('machine') 是 Docker 宿主机和配置好的客户端的结合.
Docker Engine 是一个客户端 - 服务器应用程序, 由 Docker 守护进程, 一个 REST API 指定与守护进程交互的接口, 和一个命令行接口 (CLI) 与守护进程通信.
Docker Engine 从 CLI 中接受 docker 命令, 例如 docker run,docker ps.
Docker Machine 是一个用户配置和管理你的宿主机 (上面具有 Docker Engine 的主机) 的工具.
通常, 你在你的本地系统上安装 Docker Machine.Docker Machine 有自己的命令行客户端 docker-machine 和 Docker Engine 客户端 Docker.
你可以使用 Machine 在一个或多个虚拟系统上安装 Docker Engine.
这些虚拟系统可以是本地的 (就像你在 Mac 或者 Windows 上使用 Machine 在 VirtualBox 中安装和运行 Docker Engine 一样) 或远程的(就像你使用 Machine 在云提供商上 provision Dockerized 宿主机上一样).
Dockerized 宿主机本身可以认为是, 且有实就称为, 被管理的 "machines".
来源: http://www.bubuko.com/infodetail-2891906.html