文章目录

  • 镜像含义
  • 镜像的两种获取方式
  • 官网链接获取
  • 自定义镜像
  • 镜像采集的原理
  • 镜像创建的方式
  • Docker commit 创建
  • Dockerfile创建镜像

开始,我们先谈谈什么是镜像?

镜像含义:



那么,什么是镜像呢?镜像是启动容器的核心,在Docker中,容器是基于镜像启动的,镜像采用分层设计(镜像最多可以有255层),采用的是COW技术(即前端和后端技术)


dockerfile 编译构建镜像 dockerfile构建镜像的原理_Dockerfile


dockerfile 编译构建镜像 dockerfile构建镜像的原理_docker_02

返回首页

镜像的两种获取方式

一、官网链接获取

官方网站链接: https://hub.docker.com

二、自定义镜像,也称私有镜像,也可以说是自己制作的镜像:

1、首先,我们来来看看镜像采集的原理:

![在这里插入图片描述]()

镜像采用分层设计 ——》 创建读写层 ——》 修改配置 ——》 重新打包

2、创建镜像的方式(两种)

(1)docker commit创建镜像:

docker commit 是简单的创建镜像的方式,我们可以在命令行输入创建命令: ```bash docker commit ID号 名称:标签 ``` 来创建,但commit创建有一定的局限性,就是很容易创建简单的镜像,当碰到需要设置默认的启动命令时或者需要设置环境变量时、需要指定镜像开放某些特定的端口时,一但碰到这些复杂的情况就十分的不方便。所以,针对这一点,我们可以使用Dockerfile来制作镜像。

返回首页

(2) Dockerfile制作镜像:



其实Dockerfile制作镜像很简单,就像是我们平时使用的Shell脚本方式一样,Dockerfile 也是采用类似于脚本的方式来制作的,编写Dockerfile文件,然后通过执行docker build 命令来制作镜像。功能强大,而且更加快捷。


那么 Dockerfile 功能既然这么强大,怎么制作Dockerfile镜像?


Dockerfile镜像的制作步骤:


创建存储 Dockerfile 的目录 ——》 在目录中编写 Dockerfile 文件 ——》使用 “ docker build -t 镜像名:标签 Dockerfile所在的目录(通常以 . 代替) ” 命令生成镜像

Dockerfile的基本语法:

语法指令

语法说明

FROM

基础镜像

RUN

制作镜像时执行的命令,可以有多个

ADD

复制文件到镜像,自动解压

COPY

复制文件到镜像,不解压

EXPOSE

声明开放的端口

ENV

设置容器启动后的环境变量

WORKDIR

定义容器默认工作目录(等于cd)

CMD

容器启动时执行的命令 (注意:CMD只可以有一条)

当然,Dockerfile除了以上基础语法外,还有其他的,这里我就不一一列举了,感兴趣的朋友可以自行去搜索

返回首页