(四)Docker构建镜像的两种方式

概述

首先我们需要明白Docker为什么会出现, 答案是为了解决一个长期存在的一个痛点,那就是运维在部署应用程序的时候,每台物理先要搭建环境, 比如新购买了3台物理机,那么首先每台电脑都要安装相同版本的tomcat, jdk等软件,那么每台机器都要安装一遍. docker就是为解决这个问题诞生的, 那就是只要tomcat,jdk只要安装一遍,然后打包为一个镜像,而且这个镜像还可以保存到仓库, 然后每台物理机只要安装一遍这个镜像就好了,这样给我们部署,构建统一环境就带来了很大便捷,所以构建镜像自然也是Docker核心

Docker commit方式

原理

Docker commit方式原理很简单, Docker commit是docker的一个命令, 这种方式原理是直接对接一个容器的方式,通过和容器交互, 容器运行起来就是一个精简版的linux, 进入到容器中,然后安装你想安装的软件(mysql tomcat, jkd等),然后你对这个容器进行docker commit, 就打包好了一个新的镜像,也就是你想的一个运行环境.

例子

1.启动一个centos的镜像,并且进入到容器中开始交互
(四)Docker构建镜像的两种方式
2.在linux中像平常使用linux一样,由于一个centos镜像只包含linux内核部分,像常用的vim都是没有的,我们安装一个vim
(四)Docker构建镜像的两种方式
(四)Docker构建镜像的两种方式
3.将目前运行的容器,打包为一个新镜像(退出容器,ctr+q+p)
(四)Docker构建镜像的两种方式
重新运行docker run -it centos-vim, 这个镜像的linux就是有vim功能的linux了
4.通过docker history命令,可以看看一个镜像的打包历史,基于的镜像等
(四)Docker构建镜像的两种方式

DockerFile方式

原理

例子