Docker (6)

92 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第29天,点击查看活动详情

前面一直介绍 Docker 容器技术是什么、怎么用,但一直没有说我们为什么要用 Docker 容器技术.....既然现在大家都在利用 Docker 来部署,肯定是因为 Docker 有优于其他的优点,所以接下来就主要梳理一下 Docker 的这些优点.....

Docker 的优势

Docker 相比于传统虚拟化方式的优势

  • Docker 启动快速属于秒级别。虚拟机通常需要几分钟去启动;
  • Docker 需要的资源更少, Docker 在操作系统级别进行虚拟化, Docker 容器和内核交互,几乎没有性能损耗,性能优于通过 Hypervisor 层与内核层的虚拟化;
  • Docker 更轻量, Docker 的架构可以共用一个内核与共享应用程序库,所占内存极小。同样的硬件环境, Docker 运行的镜像数远多于虚拟机数量,对系统的利用率非常高;
  • 与虚拟机相比, Docker 隔离性更弱, Docker 属于进程之间的隔离,虚拟机可实现系统级别隔离;
  • 安全性: Docker 的安全性也更弱。 Docker 的租户 root 和宿主机 root 等同,一旦容器内的用户从普通用户权限提升为root权限,它就直接具备了宿主机的root权限,进而可进行无限制的操作。虚拟机租户 root 权限和宿主机的 root 虚拟机权限是分离的,并且虚拟机利用如 Intel 的 VT-d 和 VT-x 的 ring-1 硬件隔离技术,这种隔离技术可以防止虚拟机突破和彼此交互,而容器至今还没有任何形式的硬件隔离,这使得容器容易受到攻击;
  • 可管理性: Docker 的集中化管理工具还不算成熟。各种虚拟化技术都有成熟的管理工具,例如 VMware vCenter 提供完备的虚拟机管理能力;
  • 高可用和可恢复性: Docker 对业务的高可用支持是通过快速重新部署实现的。虚拟化具备负载均衡,高可用,容错,迁移和数据保护等经过生产实践检验的成熟保障机制, VMware 可承诺虚拟机 99.999% 高可用,保证业务连续性;
  • 快速创建、删除:虚拟化创建是分钟级别的, Docker 容器创建是秒级别的, Docker 的快速迭代性,决定了无论是开发、测试、部署都可以节约大量时间;
  • 交付、部署:虚拟机可以通过镜像实现环境交付的一致性,但镜像分发无法体系;化。 Docker 在 Dockerfile 中记录了容器构建过程,可在集群中实现快速分发和快速部署。

总结出一张对比图表:

特性容器虚拟机
启动秒级分钟级
磁盘使用一般为 MB一般为 GB
性能接近原生弱于
系统支持量单机支持上千个容器一般是几十个

以上就是关于为什么 Docker 容器技术这么受青睐的原因,也就是 Docker 的优点的整理......
希望本文能够帮到你,如有错误,望指正!
我向你敬礼啊,Salute!