官方文档:https://docs.docker.com/machine/overview/
可以使用Docker Machine做什么?
- 在Mac或Windows上安装并运行Docker
- 配置和管理多个远程Docker主机
- 提供Swarm集群
什么是Docker Machine?
Docker Machine是一个工具,可以让你在虚拟主机上安装Docker Engine,并用docker-machine命令管理主机。你可以使用计算机在本地Mac或Windows计算机上,公司网络,数据中心或云提供商(如Azure,AWS或Digital Ocean)上创建Docker主机。
使用docker-machine命令,你可以启动,检查,停止和重新启动托管主机,升级Docker客户端和守护进程,并配置Docker客户端与主机通信。
将机器CLI指向正在运行的托管主机,并且可以直接在该主机上运行docker
命令。例如,运行docker-machine env default
指向一个名为default
的主机,按照屏幕上的说明完成env设置,然后运行docker ps
,docker run hello-world
等等。
Machine是在Docker v1.12之前在Mac或Windows上运行Docker的唯一方法。从测试版和Docker v1.12开始,Docker for Mac和Docker for Windows作为本地应用程序提供,并且是更新桌面和笔记本电脑上更好的选择。我们鼓励你尝试这些新的应用程序。 Docker for Mac和Docker for Windows的安装程序包括Docker Machine和Docker Compose。
如果你不确定从哪里开始,请参阅Docker入门,它将指导您完成Docker的简要端到端教程。
为什么要使用Docker Machine?
Docker Machine使你能够在各种类型的Linux上配置多个远程Docker主机。
此外,Machine允许你在旧版Mac或Windows系统上运行Docker,如上一主题中所述。
Docker Machine有这两个广泛的用例。
- 你有一个较旧的桌面系统,并希望在Mac或Windows上运行Docker
如果你主要工作不符合新版Docker for Mac和Docker for Windows应用程序要求的较旧的Mac或Windows笔记本电脑或台式机上,那么需要在本地运行Docker机器运行Docker Engine。使用Docker Toolbox安装程序在Mac或Windows上安装Docker Machine可以为本地虚拟机配置Docker Engine,使您能够连接它并运行docker
命令。
- 我想在远程系统上配置Docker主机
Docker Engine在Linux系统上本地运行。如果你有一个Linux系统作为你的主系统,并且想要运行docker
命令,你只需要下载并安装Docker Engine。但是,如果你想要在网络上,云中甚至本地配置多个Docker主机,需要一种高效的方法,那么需要Docker Machine。
无论的主系统是Mac,Windows还是Linux,都可以在其上安装Docker Machine,并使用docker-machine命令来配置和管理大量的Docker主机。它会自动创建主机,在其上安装Docker Engine,然后配置Docker客户端。每个托管主机(“机器”)是Docker主机和配置的客户机的组合。
Docker Engine和Docker Machine有什么区别?
当人们说“Docker”时,他们通常指的是Docker Engine,由Docker守护进程组成的 客户端-服务器 应用程序,指定与守护进程交互的接口的REST API,以及与守护进程交谈的命令行界面(CLI) (通过REST API包装)。 Docker Engine接受来自CLI的docker命令,如
docker run <image>
,docker ps
列出正在运行的容器,docker image ls
列出镜像等等。
Docker Machine是一个配置和管理Docker化主机的工具(Docker Engine上的主机)。通常,在本地系统上安装Docker Machine。 Docker Machine拥有自己的命令行客户端docker-machine和Docker Engine客户端 docker。 你可以使用Machine在一个或多个虚拟系统上安装Docker Engine。这些虚拟系统可以是本地的(例如当你使用计算机在Mac或Windows上的VirtualBox上安装和运行Docker引擎)或远程(如使用计算机在云提供程序上配置Docker化主机时)。Docker化主机本身可以被认为是有时被称为管理的“Machine”。
原文地址:https://www.cnblogs.com/jason89/p/9034127.html