docker和虚拟机的区别

我来回答
共3个回答
守笑翠
回答
用过VM和Docker就很能体会到,Docker启动时间很快,几秒钟就能完成。VM有时候需要几十秒甚至几分钟。而且,Docker对资源的利用率很高,一台主机可以同时运行几千个Docker容器,但一台服务器只能划分几个VM。但是虚拟机是通过管理系统(Hypervisor)模拟出 CPU、内存、网络等硬件,然后在这些模拟的硬件上创建客户内核和操作系统。这样做的好处就是虚拟机有自己的内核和操作系统,并且硬件都是通过虚拟机管理系统模拟出来的,用户程序无法直接使用到主机的操作系统和硬件资源,因此虚拟机也对隔离性和安全性有着更好的保证。 而 Docker 容器则是通过 Linux 内核的 Namespace 技术实现了文件系统、进程、设备以及网络的隔离,然后再通过 Cgroups 对 CPU、 内存等资源进行限制,最终实现了容器之间相互不受影响,由于容器的隔离性仅仅依靠内核来提供,因此容器的隔离性也远弱于虚拟机。 收起
2023-01-31
沈语蕊
回答
Docker可以让一个应用在任何操作系统中非常方便的运行。而以前我们接触的虚拟机,也能在一个操作系统中,运行另外一个操作系统,保护系统中的任何应用。 「虚拟机」(virtual machine)是在操作系统中「模拟」硬件设备,然后运行另一个操作系统,比如在 Windows 系统里面运行 Ubuntu 系统,这样就可以运行任意的Ubuntu应用了。 「Docker」仅仅是封装函数库,并没有模拟完整的操作系统。 收起
2023-01-28
隆晖
回答
docker和虚拟机的区别就是在处理器上面是不相同,Docker的处理器在各大电脑上面是非常快速,但是虚拟机处理器就没有这样的快速,相对来说,DOCKER的处理器是在中高端行业里面的佼佼者。而虚拟机是一个很普通的处理器。虚拟机属于虚拟化技术。而Docker这样的容器技术,也是虚拟化技术,属于轻量级的虚拟化。虚拟机虽然可以隔离出很多“子电脑”,但占用空间更大,依赖专用的操作系统。OS会占用额外的CPU、RAM和存储。而容器技术不需要虚拟出整个操作系统,而是对进程进行隔离,只需要虚拟一个小规模的环境(类似“沙箱”)。 收起
2023-01-27
其它产品问答
以下是Linux系统下,一些docker使用命令: 1,查看Docker服务状态:使用systemctl status docker命令查看Docker服务的状态。其中Active:active(running)即表示Docker服务为正在运行状态。image 2,停止Docker服务:使用systemctl stop docker命令。 3,启动Docker服务:使用systemctl start docker命令。 4,重启Docker服务:使用systemctl restart docker命令。
2023-01-17
3 个回答
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。 一个完整的Docker有以下几个部分组成: DockerClient客户端 Docker Daemon守护进程 Docker Image镜像 DockerContainer容器
2023-01-17
3 个回答
查看更多
消息通知
咨询入驻
商务合作