Docker系列8:Docker File基础
admin
2023-03-27 04:21:13
0

一、DockerFile简介

1、简介

什么是docker file

  • docker file仅仅就是一些文本指令而已

  • 将这些指令保存成一个文本文件

  • 然后通过在命令行中调用这些文本文件完成创建docker镜像

docker file的组成结构

  • # 表示注释信息

  • 指令 参数

  • 一行一个指令,指令通常写成大写,但是其实大小写不敏感

  • docker file中的第一个非注释行必须是FROM(这是用来指定基础镜像,因为我们知道制作镜像都是基于一个基础镜像来做的。)

  • docker file中的内容是从上向下依次执行

docker file使用要求

  • 第一个要求:就是,第一要有工作目录,目录中要有docker file文件,首字母要大写,如下

  • 第二个要求:必须将需要用到的相关文件都放在这个目录或者子目录中,比如我们要在容器中安装rpm包和配置文件,都必须放在这里

  • 在制作镜像的时候,如果是将一个子目录做入的镜像中,那么子目录下的全部文件都会做入镜像。

    Docker系列8:Docker File基础

有个特殊情况,如子目录中的有些文件我们并不想做入到镜像中,那么此时就可以将这些文件排除掉

  • 工作目录下,还应该有个隐藏文件:dockeringore

  • 这个文件就可以实现将指定的文件不要做入到镜像中

  • 方法就是将需要忽略的文件的路径一行一个的写入到这个隐藏文件中

当工作目录准备好一会,就可以制作镜像了

  • 可以通过执行命令docker build通过读取这个docker file文件来制作镜像

  • 然后将这个做好的镜像打个标签,然后推到仓库中,然后就可以用了

  • 在用docker build制作镜像的时候,其实也会悄悄地启动一个容器,然后在这个容器中执行安装配置操作,然后将安装好的结果做成一个镜像

  • 在制作镜像的时候,是可以执行一些shell命令的,但是需要注意,这些命令并不一定有,就要看底层的基础镜像中是否有这个命令。

在docker file中也是支持使用变量的

  • 定义变量:var=value

  • 引用变量:$var 或者 ${var}

也支持变量的一些高级用法

  • ${var:-value}  如果变量没有定义或者变量值为空,那么就输出后面的值

  • ${var:+value}  如果变量已经有值了,就将value赋值给变量


相关内容

热门资讯

北京-东盟科技产业推介洽谈会举... 5月8日下午,由北京市贸促会主办的第二十八届科博会北京-东盟科技产业推介洽谈会在国家会议中心二期举办...
“氢能心脏”破解无人机续航难题 (来源:天津日报) 转自:天津日报 据新华社大连5月10日电(记者 蔡拥军 张博群)记者10日从中...
原创 4... 近日,根据多家科技媒体的消息,国内手机评测机构安兔兔公布了2026年4月份安卓手机好评榜TOP10。...
伊朗提议美方在30天内撤销对伊... 据伊朗方面10日消息,知情人士表示,伊朗在其向美方的提议中,要求美国财政部外国资产控制办公室在30天...
特朗普:伊朗的回应“完全不可接... 当地时间5月10日,美国总统特朗普在其社交媒体“真实社交”发文表示,他刚刚读了伊朗那些所谓的“代表”...
训练运行模式缺陷或致AI提供危... 据新华社伦敦5月9日电 英国《自然》杂志网站日前发表文章说,人工智能(AI)聊天机器人可能向用户提供...
原创 都... 其实也很简单,很大一部分人就是找不到成就感。 只能去信这些,几乎没有认知门槛啊。 智商75以上的人,...
“宇宙超级快递小哥”即将出发 ... 新一单“太空快递”即将发货! 近日 天舟十号完成转运和全区合练 各项发射准备工作全部就绪 我国第十艘...
美媒证实一艘美国商船遭伊朗无人... 新华社华盛顿5月10日电 (记者徐剑梅 黄强)据美国福克斯新闻数字网报道,一艘美国商船10日在波斯湾...
特朗普声称伊朗47年来一直在“... 美国总统特朗普于当地时间5月10日在社交媒体发文,“猛烈抨击”伊朗长期“玩弄”美国和世界,同时还痛批...