一、基本概念

Docker 主要包括三个基础概念

  • 镜像(Image
  • 容器(Container
  • 仓库(Repository
    Docker大部分操作都是围绕这三个核心在在操作,所以这三个概念对掌握Docker技术尤为重要

二、Docker 镜像

1、概念

一个镜像由一组文件组成 轻量级、可执行的独立软件包。简单的来说是一个用来保存系统运行的配置、文件和应用的可以传递文件,并且这个文件只能读 。例如:tomcat镜像 打包了运行某个软件所需的所有内容

  • 代码
  • 运行时环境
  • 依赖库
  • 环境变量
  • 配置文件等

2、底层基础是Union File System(联合文件系统)

  • UnionFS:一种分层、轻量级且高性能的文件系统,支持对文件系统的修改作为一次提交来一层层的叠加,也支持将不同目录挂载到同一虚拟文件系统下。
  • 镜像由一层层的文件系统组成,通过分层进行继承。基于基础镜像,可以制作出各种具体的应用镜像
  • 镜像运行时,一次联合加载多个文件系统,根据继承关系进行叠加,最终外部只看到一个文件系统,但拥有了完整的文件和目录结构。
  • Docker使用的AUFS
  • AUFS又叫Another Union File System,后来叫Alternative Union File System,后来可能觉得不够霸气,改成
    Advance UnionFS(高级联合文件系统)
  • 它的特点,每一层只读,比如我们安装了一个Ubuntu系统,在Ubuntu上安装JDK在安装Tomcat

3、分层的好处

  1. 方便维护
  2. 节省空间

三、Docker 容器

1、概念

容器是有镜像运行时候产生的环境

2、容器与镜像的关系

容器与镜像的关系就是像我们类与对象的关系

docker

面向对象

说明

镜像


镜像保存系统的文件配置,目录文件,应用程序等

容器

对象

运行镜像产生的环境

3、镜像运行之后产生容器会不会产生性能问题?

比如我们的把镜像运行20次产生20个容器会不会极大的消耗性能,答案是容器是和宿主共享硬件资源的,所以产生的消耗是很小的。

4、镜像共享

docker重要的三个概念 docker三大概念_文件系统

四、Docker 仓库

1、概要

存放镜像的集合

2、常用的镜像仓库

  • 官方镜像仓库 https://hub.docker.com/
  • 阿里云镜像 https://你的前缀.mirror.aliyuncs.com
  • 私有仓库,供公司内部使用