1. Docker是什么
- VMware可以完整的虚拟整个计算机硬件,让我们在其中安装操作系统,并运行操作系统。
- JVM虚拟机可以运行Class代码,常见的我们直接运行一个Jar包。
- Docker与之类似,也是一种虚拟技术,但是不像VMware一样安装整个完整的操作系统那样笨重,也不像JVM那
样只能运行class代码。Docker是应用级别的虚拟,可以将已有的软件打包运行在其中,更加轻便加灵活。
Docker被称作应用容器引擎,特点是在应用级别的虚拟——容器化!因为docker是借助于linux下的一些隔离技术而
实现的软虚拟化,无法做到一整套的硬件虚拟化,所以主要是相当于一种应用的打包,实现应用在任何一个docker
环境中无差别运行。
Docker中几个重要的概念:Docker Engine 运行引擎、Docker Image 镜像、Docker Container 容器
概念 | 说明 |
---|---|
Docker Engine 运行引擎 | 类似jvm需要安装jre/jdk,使用docker需要安装docker 运行环境,分为CE版本和EE版本,CE为社区版本,我们一般用CE版本。docker image由engine管理,docker container运行在engine中。 |
Docker Image 镜 像 | 将应用按照一定规则(Dockerfile)打包成的可运行、分发的软件包。类似我们下载的操作系统镜像.iso文件。 |
Docker Container 容器 | 将docker image通过指定不同的参数运行起来就是docker container,如果说docker image是模版,docker container就是通过模版构建起来的实例 |
直观上,docker engine就是一个软件:
直观上,docker image就是一系列镜像:
直观上,docker container就是一系统运行着的镜像: