19 Docker 相关概念
docker 容器虚拟化与传统虚拟机比较

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