Skip to content

19 Docker 相关概念

docker 容器虚拟化与传统虚拟机比较

Docker vs Virtual machines

  • 容器就是将软件打包成标准化单元,以用于开发、交付和部署。
    • 容器镜像是轻量的、可执行的独立软件包,包含软件运行所需的所有内容:代码、运行时环境、系统工具、系统库和设置。
    • 容器化软件在任何环境中都能够始终如一地运行。
    • 容器赋予了软件独立性,使其免受外在环境差异的影响,从而有助于减少团队间在相同基础设施上运行不同软件时的冲突。
  • 相同:容器和虚拟机具有相似的资源隔离和分配优势
  • 不同:
    • 容器虚拟化的是操作系统,虚拟机虚拟化的是硬件。
    • 传统虚拟机可以运行不同的操作系统,容器只能运行同一类型操作系统
Docker虚拟机 (VMs)
启动时间几秒钟启动。虚拟机需要几分钟来启动。
运行环境Docker 使用执行引擎。虚拟机使用虚拟机监视器 (hypervisor)。
内存效率无需虚拟化空间,因此占用更少内存。需要加载整个操作系统才能启动表面,因此效率较低。
部署部署简单,因为只需使用单个镜像,容器化可在所有平台上使用。部署相对较长,因为执行由单独的实例负责。
使用Docker 具有复杂的使用机制,包括第三方和 Docker 管理的工具。工具易于使用且操作更简单。