6.Docker定制镜像

当我们从docker镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。

  • 1.从已经创建的容器中更新镜像,并且提交这个镜像
  • 2.使用 Dockerfile 指令来创建一个新的镜像

 

Dockerfile 定制镜像

镜像的定制实际上就是定制每一层所添加的配置、文件。如果我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本,用这个脚本来构建、定制镜像,那么之前提及的无法重复的问题、镜像构建透明性的问题、体积的问题就都会解决。这个脚本就是 Dockerfile

 

Dockerfile 是一个文本文件,其内包含了一条条的指令(Instruction),每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。

 

还以之前定制 tomcat镜像为例,这次我们使用 Dockerfile 来定制

 

 

      1. 案例:创建一个镜像(基于tomcat) 里面要有一个index.html,并写入Hello qfjy Docker

 

  1. 在一个空白目录中,建立一个文本文件,并命名为 Dockerfile

其内容为:

这个 Dockerfile 很简单,一共就两行。涉及到了两条指令,FROM  RUN

 

    1. build构建镜像

 

回到之前定制的 tomcat 镜像的 Dockerfile 来。现在我们明白了这个 Dockerfile 的内容,那么让我们来构建这个镜像吧。

 Dockerfile 文件所在目录执行:

从命令的输出结果中,我们可以清晰的看到镜像的构建过程。在 Step 2 中,如同我们之前所说的那样,RUN 指令启动了一个容器 9f8…,执行了所要求的命令,并最后提交了这一层 9f8..,随后删除了所用到的这个容器 d93..

这里我们使用了 docker build 命令进行镜像构建

 

 

      1. 案例:基于上一个镜像(基于tomcat) 将ROOT内多余的文件都删除。只保留index.html

 

1、修改Dockerfile

  1. 构建镜像

docker build –t 镜像名 .

  1. 查看镜像列表 docker images

  1. 删除虚拟镜像

docker image prune

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值