容器部署简单,虚拟机部署相对复杂。
虚拟化技术依赖物理CPU和内存,是硬件级别的;
而docker构建在操作系统上,利用操作系统的containerization技术,所以docker甚至可以在虚拟机上运行。
容器秒级启动,虚拟机通常分钟级启动。
传统的虚拟化技术在构建系统的时候较为复杂,需要大量的人力;
而docker可以通过Dockfile来构建整个容器,重启和构建速度很快。
容器需要的资源(如磁盘、CPU、内存)相对更少。
容器比较轻便,虚拟机相对较重。
虚拟化系统一般都是指操作系统级概念,比较复杂,称为“系统”;
而docker开源而且轻量,称为“容器”,单个容器适合部署少量应用,比如部署一个redis、一个memcached。