Docker镜像的构建方式

一、Docker镜像的分层

·Dockerfile中的每个指令都会创建一个新的镜像层

·镜像层将被缓存和复用

·当Dockerfile的指令修改了,复制的文件变化了,或者构建镜像时指定的变量不同了,对应的镜像层缓存就会失效

·某一层的镜像缓存失效之后,它之后的镜像层缓存都会失效

·镜像层是不可变的,如果在某一层中添加一个文件,然后在下一层中删除它,则镜像中依然会包含该文件

二、Docker镜像的创建

1、Docker镜像

·应用发布的标准格式

·支撑一个Docker容器的运用

2、Docker镜像的创建方法

(1)、基于已有镜像创建

   将容器里面运行的程序及运行环境打包生成新的镜像

   docker commit 【选项】 容器ID/名称 仓库名称:【标签】

   ·-m 说明信息

  ·-a 作者信息

  ·-p 生成过程中停止容器的运行

(2)、基于本地模板创建

·通过导入操作系统模板文件生成新的镜像

·使用wget命令导入为本地镜像

  wget

  http://download.openvz.org/template/precreated/debian-7.0-x86-minimal.tar.gz

·导入成功后可查看本地镜像信息

  docker images | grep new

(3)、基于Dockerfile创建

·Dockerfile是由一组指令组成的文件

·Dockerfile结构四部分

   基础镜像信息

   维护者信息

   镜像操作指令

   容器启动时执行指令

·Dockerfile每行支持一条指令,每条指令可携带多个参数,支持使用以“#”号开头的注释

 

 

 

 

 Dockerfile操作指令

三、私有仓库建立

 

上传

获取私有仓库列表

 

删除centos镜像

 测试私有仓库下载

 

四、Docker数据卷

下载镜像

 宿主机目录/var/www挂载容器中的/datal

 

数据卷容器

 

端口映射

 

容器互联

原文地址:https://www.cnblogs.com/Xing88/p/14045575.html