Docker Machine概述

预计阅读时间:4分钟

您可以使用Docker Machine来执行以下操作:

  • 在Mac或Windows上安装并运行Docker
  • 设置和管理多个远程Docker主机
  • 供应群群集

什么是Docker Machine?

Docker Machine是一种工具,可让您在虚拟主机上安装Docker Engine,并使用docker-machine命令管理主机。您可以使用Machine在本地Mac或Windows盒,公司网络,数据中心或Azure,AWS或DigitalOcean等云提供商上创建Docker主机。

使用docker-machine命令,您可以启动,检查,停止和重新启动托管主机,升级Docker客户端和守护程序,以及配置Docker客户端以与您的主机进行通信。

将计算机CLI指向正在运行的托管主机,您可以docker 直接在该主机上运行命令。例如,运行docker-machine env default指向一个名为的主机default,按照屏幕上的说明完成 env安装,然后运行docker psdocker run hello-world依此类推。

机器在Docker v1.12之前的Mac或Windows上运行Docker的唯一方法。从beta程序和Docker v1.12开始, 适用于Mac的Docker Desktop适用于Windows的Docker Desktop作为本机应用程序提供,在较新的台式机和笔记本电脑上,此用例的更好选择。我们鼓励您尝试这些新应用。

如果不确定从哪里开始,请参阅《 Docker入门》,它指导您完成有关Docker的简短端到端教程。

我为什么要使用它?

Docker Machine使您可以在各种Linux上配置多个远程Docker主机。

此外,如上一主题所述,Machine允许您在较旧的Mac或Windows系统上运行Docker。

Docker Machine有这两个广泛的用例。

  • 我有一个较旧的桌面系统,想在Mac或Windows上运行Docker

    Mac和Windows上的Docker Machine

    如果您使用的是旧的Mac或Windows笔记本电脑或台式机不符合新的要求,主要工作泊坞Mac版桌面码头工人Windows版桌面应用程序,那么你需要泊坞窗机在本地运行泊坞引擎。

  • 我想在远程系统上配置Docker主机

用于配置多个系统的Docker Machine

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 Enginedocker从CLI接受命令,例如 docker run <image>docker ps列出正在运行的容器,docker image ls 列出映像等。

Docker引擎

Docker Machine是用于置备和管理Dockerized主机(带有Docker Engine的主机)的工具。通常,您在本地系统上安装Docker Machine。Docker Machine有自己的命令行客户端 docker-machine和Docker Engine客户端docker。您可以使用Machine在一个或多个虚拟系统上安装Docker Engine。这些虚拟系统可以是本地的(如在Mac或Windows上使用Machine在VirtualBox中安装和运行Docker Engine时),也可以是远程的(如在Mac上使用Machine在云提供商上配置Dockerized主机时)。Dockerized主机本身可以被认为是托管的“机器” ,有时也称为托管的“机器”。

Docker机器

接下来要去哪里

搬运工机器amazonec2天蓝digitalocean谷歌开栈Rackspace公司SOFTLAYERvirtualbox的vmwarefusionvmwarevcloudairvmwarevsphereexoscale