优雅使用Dockerfile定制镜像

使用 Dockerfile 定制镜像

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

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

此处以定制 tomcat镜像为例,使用 Dockerfile 来定制。

首先拉取tomcat镜像

$	docker pull tomcat

查看镜像

$	docker images

进入镜像 (-it:指的是交互式终端进入到bash中),在这里可以看到已经进入到tomcat中

$	docker run -it tomcat bash

在这里插入图片描述
进入到webapps/Root目录下面 使用命令 $ pwd 获取路径(这个路径需要保存起来,或者开两个窗口,方便复制)
在这里插入图片描述
一般自己创建下载的文件都放在 /use/local目录底下
在这里插入图片描述

把Dockerfile放在docker/tomcat目录下(在没有Dockerfile文件的情况下,可以直接使用命令 $ vi Dockerfile创建并编辑文件内容)
在这里插入图片描述
Dockerfile文件写入(i:写入文件内容 esc:退出写入模式)

FROM :指定某个镜像
WORKDIR :相当于切换到某个目录下面(后面的路径就是刚刚保存的路径)
RUN :执行某个方法

之后保存并退出(esc ---》 :wq!
在这里插入图片描述
基于tomcat镜像,切换到tomcat目录下的ROOT中,删除里面所有的文件,并且写入“hello tomcat”到index.html文件中

退出后需要自己构建一个镜像

  • hello:镜像的名字
  • . :代表上下文(执行build命令是把tomcat文件夹下所有的文件打包放在Docker
    server中,在Docker server中解包后的所在的层级就为当前路径)
$	docker build -t hello .

在这里插入图片描述
构建完成后查看镜像
在这里插入图片描述
由于hello这个镜像是基于tomcat镜像,所以启动的时候需要指定ip
在这里插入图片描述
启动成功后可在浏览器访问

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值