Docker对服务器端开发/部署带来的变化
分类:知识集锦 发布时间:2023/4/10 17:47:37

方便快速部署,对于部署来说可以极大的减少部署的时间成本和人力成本。

Docker支持将应用打包进一个可以移植的容器中,重新定义了应用开发,测试,部署上线的过程,核心理念是 Build once, Run anywhere

1)标准化应用发布,docker容器包含了运行环境和可执行程序,可以跨平台和主机使用

2)节约时间,快速部署和启动,VM启动一般是分钟级,docker容器启动是秒级;

3)方便构建基于微服务架构的系统,通过服务编排,更好的松耦合;

4)节约成本,以前一个虚拟机至少需要几个G的磁盘空间,docker容器可以减少到MB级;

 

Docker 优势:

1、交付物标准化

Docker的标准化交付物称为"镜像",它包含了应用程序及其所依赖的运行环境,大大简化了应用交付的模式。

2、应用隔离

Docker可以隔离不同应用程序之间的相互影响,但是比虚拟机开销更小。总之,容器技术部署速度快,开发、测试更敏捷;提高系统利用率,降低资源成本.

3、一次构建,多次交付

类似于集装箱的"一次装箱,多次运输",Docker镜像可以做到"一次构建,多次交付"。

 

Docker的度量:

Docker是利用容器来实现的一种轻量级的虚拟技术,从而在保证隔离性的同时达到节省资源的目的。Docker的可移植性可以让它一次建立,到处运行。Docker的度量可以从以下四个方面进行:

 

1)隔离性

通过内核的命名空间来实现的,将容器的进程、网络、消息、文件系统和主机名进行隔离。

 

2)可度量性

Docker主要通过cgroups控制组来控制资源的度量和分配。

 

3)可移植性

Docker利用AUFS来实现对容器的快速更新。

AUFS是一种支持将不同目录挂载到同一个虚拟文件系统下的文件系统,支持对每个目录的读写权限管理。AUFS具有层的概念,每一次修改都是在已有的只写层进行增量修改,修改的内容将形成新的文件层,不影响原有的层。

 

4)安全性

安全性可以分为容器内部之间的安全性;容器与托管主机之间的安全性。

容器内部之间的安全性主要是通过命名空间和cgroups来保证的。

容器与托管主机之间的安全性主要是通过内核能力机制的控制,可以防止Docker非法入侵托管主机。

 

Docker容器使用AUFS作为文件系统,有如下优势:

1)节省存储空间

多个容器可以共享同一个基础镜像存储。

2)快速部署

3)升级方便

升级一个基础镜像即可影响到所有基于它的容器。需要注意已经在运行的docker容器不受影响

容器和 VM 的主要区别:

 

表面区别:

容器占用体积小,虚拟机占用体积大

隔离性:容器提供了基于进程的隔离,而虚拟机提供了资源的完全隔离。

启动速度:虚拟机可能需要一分钟来启动,而容器只需要一秒钟或更短。

容器使用宿主操作系统的内核,而虚拟机使用独立的内核。Docker 的局限性之一是,它只能用在64位的操作系统上。

 

本质区别:容器是被隔离的进程

体验创新云技术带来核心业务效率显著提升
立即预约,加速企业数字化转型进程
Copyright ⓒ 2022 苏州博纳讯动软件有限公司 国徽 苏ICP备13004761号 法律声明及隐私政策