根据学习网站整理:Docker 10分钟快速入门_哔哩哔哩_bilibili
1.虚拟机,需要模拟硬件系统、运行整个操作系统,但体积臃肿,内存占用较高,程序的性能也会受到影响。
2.Docker技术与虚拟机类似,但很轻量,启动速度快,相当于启动主机上的一个进程(因为不需要启动操作系统,虚拟机启动需要加载内存、CPU、网络等资源,再启动操作系统)。占有资源少,不需要模拟底层硬件及操作系统,为每一个应用提供一个完全隔离的运行环境。整个环境称为Docker Container (容器)。
虚拟机的建设类似,传统房屋建设,需要 打桩、浇筑地基,再建房;
容器则是,类似集装箱房屋。
ps:使用Docker技术时,生产环境的底层硬件、操作系统仍需要与测试环境保持一致。
把软件、配置环境、库等(不包含操作系统)一起打包发布,模拟完全相同的本地开发环境,保证程序移植在其他的服务器上也能正常运行。
Docker的三个重要概念:
1)Dockerfile
是个自动化脚本,用于创建镜像。实现过程就像在虚拟机中安装操作系统和软件一样。
2)Image(镜像):包含要部署的应用程序以及所关联的所有库,通过镜像可以创建多个不同的容器
3)Container(容器)
容器,相当于运行起来的虚拟机,运行应用程序。每个容器之间独立运行,相互之间不影响。