一、Docker是什么
Doceker是一种操作系统层面的虚拟化技术,可以在操作系统和应用程序之间进行隔离,也称之为容器。Docker可以在一台物理服务器上快速运行一个或多个实例,例如,启动一个Cent OS操作系统,并在其内部命令执行指令后结束,整个过程就像自己在操作系统一样
二、Docker解决的问题
主要解决环境配置问题,是一种虚拟化技术,对进程进行隔离,被隔离的进程独立于宿主操作系统和其它隔离的进程。使用Docker可以不修改应用程序代码,不需要开发人员学习特定环境下的技术,就能够将现有的应用程序部署在其它机器上
三、Docker与虚拟机比较
虚拟机也是一种虚拟化技术,它与Docker最大的区别在于它是通过模拟硬件,并在硬件上装操作系统来实现的
1、启动速度
启动虚拟机需要先启动虚拟机的操作系统,再启动应用,这个过程非常慢;而启动Docker相当于启动宿主操作系统上的一个进程
2、占用资源
虚拟机是一个完整的操作系统,需要占用大量的磁盘、内存和CPU资源,一台机器只能开启几十个虚拟机,而Docker只是一个进程,只需要将应用以及相关的组件打包,在运行时占用很少的资源,一台机器可以开启成千上万个Docker
3、镜像与容器
镜像是一种静态的结构,可以看成面向对象里的类,而容器是镜像的一个实例。镜像包含着容器运行时所需要的代码以及其它组件,它是一种分层结构,每一层都是