DockerFile

1.是什么?

Dockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本。

2.DockerFile的构建的三个步骤

  • 1.编写DockerFile文件
  • 2.build构建
  • 3.run启动

3.DockerFile基础知识和保留关键字

基础知识
  • 1:每条保留字指令都必须为大写字母且后面要跟随至少一个参数
  • 2:指令按照从上到下,顺序执行
  • 3:#表示注释
  • 4:每条指令都会创建一个新的镜像层,并对镜像进行提交
Docker执行DockerFile的大致流程
  • (1)docker从基础镜像运行一个容器
  • (2)执行一条指令并对容器作出修改
  • (3)执行类似docker commit的操作提交一个新的镜像层
  • (4)docker再基于刚提交的镜像运行一个新容器
  • (5)执行dockerfile中的下一条指令直到所有指令都执行完成
保留关键字
FROM        基础镜像,当前新镜像是基于哪个镜像的
MAINTAINER  镜像维护者的姓名和邮箱地址
RUN         容器构建时需要运行的命令
EXPOSE      当前容器对外暴露的接口
WORKDIR     指定创建容器后,终端默认登录进来的工作目录
ENV         用来构建镜像过程中设置环境变量
ADD         将宿主机目录下的文件拷贝进镜像且自动处理URL和解压tar压缩包
COPY        类似ADD,但不能自动处理URL和解压。COPY src dest/COPY ["src", "dest"]
VALUME      容器数据卷,用于数据保存和持久化工作              
CMD         指定一个容器启动时要运行的命令,只有最后一条命令有效,CMD会被docker run之后的参数替换
ENTRYPOINT  指定一个容器启动时要执行的命令,多条命令相当于叠加
ONBUINT     当构建一个被继承的Dockerfile时运行命令,父镜像在被子继承后父镜像的onbuild被触发

4.案例

自定义mycentos镜像

在这里插入图片描述
自定义mycentos目的使我们自己的镜像具备如下:
登陆后的默认路径
查看网络配置ifconfig支持

1.编写:vim Dockerfile
FROM centos
MAINTAINER dpf<pikachues@gmail.com>
 
ENV MYPATH /usr/local
WORKDIR $MYPATH

RUN yum -y install net-tools
 
EXPOSE 80
 
CMD echo $MYPATH
CMD echo "success--------------ok"
CMD /bin/bash
2.构建docker build -t 新镜像名字:TAG ./ docker build -f dockerfil文件绝对路径 -t 新镜像名字:TAG .

当DockerFile文件名为Dockerfile不用加-f dockerfil文件绝对路径

在这里插入图片描述

3.运行docker run -it 新镜像名字:TAG

在这里插入图片描述

4.列出镜像的变更历史docker history 镜像ID

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值