不允许你不知道的 Docker 优点

本文比较了容器和虚拟机技术,强调Docker在资源效率、启动速度、环境一致性、持续部署和跨平台迁移方面的优势。Google大量使用Docker及其Kubernetes,展示了容器技术在实际应用中的广泛影响力。
摘要由CSDN通过智能技术生成

docker-hub

一、容器和虚拟机的差异

1. 传统虚拟机技术

虚拟机是虚拟出一套硬件,在其上面运行一个完整的操作系统,例如我们使用 KVM,指定系统镜像,然后装系统,最终可以使用,在该系统上再运行所需的应用程序

KVM 创建虚拟机时,指定较少的 CPU、内存、硬盘 等资源、虚拟机性能较低。

vm

2. 容器技术

容器内的应用程序直接运行在宿主机的内核上,容器内没有自己的内核,也没有对硬件进行虚拟,因此容器比起虚拟机更为轻便。

docker

3. 容器对比 KVM 的好处

  • 容器能够提供宿主机的性能,而 kvm 虚拟机时分配宿主机硬件资源,性能较弱。
  • 同样配置的宿主机,最多可以启动 10个 虚拟机的化,可以启动 100+ 的容器数量。
  • 启动一个 KVM 虚拟机,得有一个完整得开机流程,花费时间较长,或许得20s,而启动一个容器只需要 1s
  • 容器内的程序,就好比直接运行在宿主机上,但是它们又是隔离的,能够使用宿主机最大的硬件资源。

二、为什么选择 Docker

1. Docker 更高效的利用系统资源

容器不需要进行硬件虚拟化以及一个完整操作系统的额外开销,docker 对系统资源的利用率更高,无论是应用执行,文件存储,还是在内存消耗等方面,都比传统虚拟机更高效。因此一个同样配置的主机,可以运行处更多数量的容器实例。

2. 更快的启动时间

传统的虚拟机启动时间较久,docker 容器直接运行在宿主机的内核上,无须启动一个完整的操作系统,因此可以达到秒级启动,大大的解决开发,测试,部署的时间。

3. 一致性的环境

在企业里,程序从开发环境,到测试服务器,到生产环境,难以保证机器环境一致性,极大可能出现系统依赖冲突,导致难以部署等 Bug

然而利用 docker 的容器 - 镜像技术,提供了除了内核之外完整的运行的环境,保证了应用环境的一致性。

4. 持续交付和部署

  • 一致性环境,对于开发和运维的人员,最希望的就是环境部署迁移别处的问题,利用 docker 可以定制镜像,以达到持续集成,持续交付和部署;
  • 通过 Dockerfile 来进行镜像构建,实现系统集成测试,运维进行生产环境的部署;
  • Dockerfile 可以使镜像构建透明化,方便技术团队能够快速理解运行环境部署流程;

5. 更轻松的迁移

Docker 可以在很多平台运行,物理是物理机,虚拟机,云服务器等环境,运行结果都是一致的。用于可以轻松的将一个平台的应用,迁移到另一个平台,而不用担心环境的变化,导致程序无法运行。

6. Docker 能做什么

  • 可以把应用程序代码及运行依赖环境打包成镜像,作为交付介质,在各环境部署;
  • 可以将 镜像(image) 启动成为 容器(container),并且提供多容器的生命周期进行管理(启、停、删);
  • container 容器之间相互隔离,且每个容器可以设置资源限额;
  • 提供轻量级虚拟化功能,容器就是宿主机中的一个个的虚拟的空间,彼此相互隔离,完全独立;

三、Docker 使用情况

Google2004 年器就已经开始使用容器技术了,并于 2006 年发布了 CgroupsImctfy 项目。ImctfyGoogle 开源版本的容器栈,它提供了用来代替 LXCLinux 应用容器。

Google 云平台的高级软件工程师 Joe Beda2014 年在 Gluecon 上做了一个关于 Google 如何使用 Linux 容器技术的报告。报告中声称限制 Google 所有的应用都是运行在容器中的。Google 每周要启动超过 20亿 个容器,每秒钟要启动超过 3000 个容器,这还不包括那些长期运行的容器。Google 同样也正在将容器集成到 Google 云平台中。

Google2014 你那推出了开源容器集群管理系统 --KubernetesKubernetes 就构建在 Docker(容器化) 之上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值