温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Docker Engine和Docker Machine是什么

发布时间:2021-12-08 13:40:08 来源:亿速云 阅读:209 作者:iii 栏目:大数据

这篇文章主要介绍“Docker Engine和Docker Machine是什么”,在日常操作中,相信很多人在Docker Engine和Docker Machine是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker Engine和Docker Machine是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Docker Engine和Docker Machine介绍

1 Docker Engine

Docker Engine也就是“Docker”,Docker我们一般理解的,都是C/S模型,用户通过docker client向docker daemon发送REST 请求。
Docker Engine包括这么几个部分:

  • Docker Daemon — docker 的守护进程,属于C/S中的server

  • Docker REST API — docker daemon向外暴露的REST 接口

  • Docker CLI — docker向外暴露的命令行接口(Command Line API)

Docker Engine和Docker Machine是什么

Docker Engine组成图

因此,客户端访问服务端的方式有两种

  • 一种是使用命令行工具,比如docker run, docker ps....

  • 另一种就是直接通过调用REST API,比如发送一个curl http请求

备注:curl
curl可以帮你完成你所有在浏览器上的操作,比如登录(这就是传输数据),下载文件,上传文件等等功能

2 Docker Machine

官方解释:

Docker Machine是一个工具,用来在虚拟主机上安装Docker Engine,并使用 docker-machine命令来管理这些虚拟主机

Docker Engine运行在本地linux系统上。如果你当前的系统是Linux,想在上边运行docker 命令,你只需要下载和安装Docker Egine就完了。然而,如果你想在网络上,云平台上,以及本地创建Docker host,你就需要Docker Machine

无论是Mac,Windows或是Linux,你都可以在其上安装Docker Machine,使用docker-machine命令来创建和管理大量的Docker hosts。它会自动创建主机,在主机上安装Docker Engine,然后配置docker client。每个被管理的主机(“machine”)都是一个Docker 主机和一个配置过的client的组合。

官方给的Docker Machine的具体使用场景:

您可以使用Docker Machine来: 在Mac或Windows上安装并运行Docker 配置和管理多个远程Docker主机 提供Swarm群集

3 Docker Machine 与 Docker Engine概念上的区别

Docker Engine: 主要用来接收和处理docker命令请求的
Docker Machine:则主要用来管理 docker化的host (安装了Docker Engine的主机)

machine

通常,你都是在本地安装Docker Machine。Docker Machine包含自己的命令行客户端:docker-machine以及Docker Engine的客户端:docker。你可以使用Machine在一个或多个虚拟机上安装Docker Engine。这些虚拟机可以是在本地,也可以是远程的。这些虚拟化的主机可以被认为是“machine”

4 使用Docker Machine

在linux上

$ curl -L https://github.com/docker/machine/releases/download/v0.13.0/docker-machine-`uname -s`-`uname -m` >/tmp/docker-machine &&
chmod +x /tmp/docker-machine &&
sudo cp /tmp/docker-machine /usr/local/bin/docker-machine

检查版本

$ docker-machine version

卸载Docker Machine

#删除可执行文件
$rm $(docker-machine)
#或者,删除您创建的机器,要单独删除每台机器
$docker-machine rm <machine-name>
#要删除所有机器
$docker-machine rm -f $(docker-machine ls -q)
$docker-machine ls
$docker-machine create --driver virtualbox default
$docker-machine env default
$eval "$(docker-machine env default)"
$docker-machine ip default
$docker-machine stop default
$docker-machine start default

到此,关于“Docker Engine和Docker Machine是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI