【易客吧】_全网激活码总代_激活码商城

您现在的位置是:首页 > 热门资讯 > 正文

热门资讯

Docker vs. 虚拟机:虚拟化技术终极指南 (docker是干什么的)

用户投稿2024-04-07热门资讯25

简介

虚拟化技术是现代 IT 基础设施中不可或缺的一部分。它使我们能够在一台物理机上部署和运行多个独立的操作系统,从而充分利用硬件资源并提高效率。两种最流行的虚拟化技术是 Docker 和虚拟机。在指南中,我们将比较 Docker 和虚拟机的功能、优缺点以及适合不同的用例。

Docker 是什么?

Docker 是一个开源的容器化平台,允许您将应用程序及其所有依赖项打包成一个轻量级的、可移植的容器。容器在称为 Docker 镜像的单独环境中运行,与底层操作系统隔离。

虚拟机是什么?

虚拟机 (VM) 是一种软件,它创建称为虚拟机的独立操作系统环境。虚拟机可以在物理机或另一台虚拟机上运行,并具有自己的 CPU、内存和存储资源。

Docker 和虚拟机的区别

| 特征 | Docker | 虚拟机 ||---|---|---|| 虚拟化类型 | 容器化 | 硬件虚拟化 || 隔离级别 | 进程级别 | 系统级别 || 资源使用 | 轻量级,共享内核 | 重量级,专用内核 || 性能 | 较高,近似原生 | 较低,受虚拟化开销影响 || 可移植性 | 高,可以在任何 Docker 兼容的主机上运行 | 低,依赖于底层硬件 || 创建速度 | 快,秒级 | 慢,取决于虚拟机大小 || 资源消耗 | 低,与其他容器共享资源 | 高,专用资源 |

Docker 的优点

轻量级和高性能:Docker 容器与底层操作系统共享内核,使其比虚拟机轻量级且性能更高。快速部署:Docker 容器可以在几秒钟内创建

Docker是什么?它比虚拟机强在哪里?

Docker是一个开源的应用容器引擎,可以让开发者将自身的应用或者软件移植到镜像中,然后发布到任何一个Windows机器或者Linux机器上,当然Docker也可以实现虚拟化。 而一个完整的Docker是由:Docker Client客户端,Docker Daemon 守护进程,Docker Image 镜像和Docker Container 容器来组成的。 容器是完全采用沙箱机制,相互之间不会有任何接口。 而Docker比虚拟机强大的地方在于:第一:启动时间:Docker容器是秒级启动的,而虚拟机时分钟级启动,在启动速度方面,Docker就能够完美地碾压了虚拟机。 第二:占用空间和性能:在占用空间和性能方面,Docker容器镜像比虚拟机要小得多且性能要比虚拟机更强。 第三:使用要求:虚拟机是基于硬件的虚拟化,其CPU也要有支持虚拟化的支持,Docker共享宿主机内核,可运行在主流的Linux,不用考虑CPU是否支持虚拟化技术。

docker是干什么的

docker是开源的应用容器引擎,能更好地在容器内运行任何应用。

Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。

Docker是 PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。Docker自2013年以来非常火热,无论是从github上的代码活跃度,还是Redhat在RHEL6.5中集成对Docker的支持,就连Google的 Compute Engine也支持docker在其之上运行。

Docker的局限

1、Docker是基于Linux64bit的,无法在32bit的linux/Windows/unix环境下使用。

2、LXC是基于cgroup等linux kernel功能的,因此container的guest系统只能是linux base的。

3、隔离性相比KVM之类的虚拟化方案还是有些欠缺,所有container公用一部分的运行库。

4、网络管理相对简单,主要是基于namespace隔离。

5、cgroup的cpu和cpuset提供的cpu功能相比KVM的等虚拟化方案相比难以度量(所以dotcloud主要是按内存收费)。

6、Docker对disk的管理比较有限。

7、container随着用户进程的停止而销毁,container中的log等用户数据不便收集。

docker是干什么的

Docker vs. 虚拟机:虚拟化技术终极指南 (docker是干什么的) 第1张

docker是一个开源的应用容器引擎。

让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。

众所周知,一个Java应用war包或者jar包启动成功,有能够对外提供服务的能力,能正常访问页面,做操作,需要部署到一台有tomcat的linux环境中,没有容器技术前的上线流程通常出现这样的或那样的问题。

docker的架构

Docker使用客户端服务器架构模式,使用远程API来管理和创建Docker容器,Docker容器通过Docker镜像来创建。容器与镜像的关系类似于面向对象编程中的对象与类,Docker daemon一般在宿主主机后台运行,等待接收来自客户端的消息。Docker客户端则为用户提供一系列可执行命令,用户用这些命令实现跟Docker daemon交互。

Docker daemon作为服务端接受来自客户的请求,并处理这些请求创建、运行、分发容器。 客户端和服务端既可以运行在一个机器上,也可通过socket或者RESTfulAPI来进行通信。

若对本页面资源感兴趣,请点击下方或右方图片,注册登录后

搜索本页相关的【资源名】【软件名】【功能词】或有关的关键词,即可找到您想要的资源

如有其他疑问,请咨询右下角【在线客服】,谢谢支持!

Docker vs. 虚拟机:虚拟化技术终极指南 (docker是干什么的) 第2张

发表评论

评论列表

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~
你上次访问网站的时间为:24-05-18,20:22:43 你第21访问网站的时间为:24-05-18 20:22:45