为什么要构建镜像?
当然是为了得到一个新的镜像咯,这个新的镜像可以保存我们修改过或者配置过的内容或者一些环境,比如说有一个镜像你需要经常用到,但是呢原始镜像或者官方提供的镜像又不满足你的需求,这个时候就很有必要根据自己的需求构建一个新的镜像咯,存起来下次直接用就行,就像在VMware上克隆虚拟机一样,得到了一个新的虚拟机,还保存了之前配置过的内容。
1 基于本地已有的镜像构建新的镜像
1.1 查看正在运行的容器,并进入容器查看/home目录下的文件
1.2 使用docker commit 命令基于正在运行的容器构建新的镜像
1.3 使用新构建的镜像启动容器,并查看/home目录下的文件
2 基于本地模板构建新的镜像
2.1 下载debian源码
2.2 使用docker导入命令将下载好的源码导入为本地镜像
3 基于dockerfile构建新的镜像
3.1 Dockerfile简介
Dockerfile是自动构建docker镜像的配置文件,Dockerfile中的命令非常类似linux shell下的命令;简单来说是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
Dockerfile 是官方推荐的方式,这样可以让使用者更清晰地看到这个镜像的制作细节,逻辑清晰,便于管理。在编写dockerfile是要遵循严格的格式,第一行必须使用From指令指定基于那个镜像,其他的不说了百度上多的很,还是不要用百度了吧,用bing搜索引擎。
Docker分为四部分:
基础镜像信息
维护者信息
镜像操作指令
容器启动时默认要执行的指令
4 案例:基于centos7基础镜像安装apache
4.1 建立工作目录
4.2 编写dockerfile文件
4.3 创建run.sh文件
4.4 创建index.html文件
4.5 docker build构建镜像(如果发现在构建过程中卡在更新yum源,建议更换镜像)
4.6 查看构建好的镜像
4.7 使用新镜像启动容器
4.8 访问http首页,测试http是否安装成功
http已经安装,并且在容器启动后成功启动