情景一:比如我要开启一个redis服务,我就用docker pull 拉去redis镜像,在根据redis镜像开启一个容器,容器打开一个端口,我可以根据这个端口进行访问容器。容器会提供一个redis服务。
情景二:比如我要开启redis集群服务,要多个服务器,进行情景部署 。开发的时候不可能给你6个服务器,然后你在上面部署 然后在进行开发,开发难度会提高。docker的一个容器就是一个小型的虚拟机,你可以一次性开多个redis服务容器,进行部署。和服务器一模一样,提高开发效率。
1.资源的使用率不同
-
虚拟机启动需要数分钟。占用大量磁盘空间及系统资源。
-
Docker容器可以在数毫秒内完成启动。
由于没有臃肿的从操作系统,Docker可以节省大量的磁盘空间以及其他系统资源。
2.应用场景不同
- 虚拟机擅长彻底隔离整个运行环境。如: 云服务提供商通常采用虚拟机技术隔离不同的用户。
- Docker通常用于隔离不同的应用。例如前端,后端以及数据库。
以上两种虚拟化技术都属于软件虚拟化,在现有的物理平台上实现对物理平台访问的截获和模拟。有些软件虚拟技术不需要硬件支持;而有些则依赖硬件支持。
我在学习docker里面有安装和基础,和部分案例