推广 热搜: 京东  联通  iphone11  摄像头  企业存储  XSKY  京东智能采购  iPhone  网络安全  自动驾驶 

云计算核心技术Docker教程:Dockerfile文件FROM命令详解

   日期:2020-11-02     来源:TechWeb编译    作者:itcg    浏览:358    我要评论    
导读:Dockerfile文件FROM指令初始化新的构建阶段并为后续指令设置“基本镜像”。因此,有效的 Dockerfile 必须以 FROM 指令开头。

Dockerfile文件FROM指令初始化新的构建阶段并为后续指令设置“基本镜像”。因此,有效的 Dockerfile 必须以 FROM 指令开头。镜像可以是任何有效镜像。

语法格式

FROM [--platform=platform] image [AS name]

FROM [--platform=platform] image[:tag] [AS name]

FROM [--platform=platform] image[@digest] [AS name]

FROM指令详细说明

ARG 是唯一一个可能出现在 FROM 前边的指令;

FROM 可以在单个 Dockerfile 镜像中多次出现以创建多个镜像,或者使用一个构建阶段作为另一个构建阶段的依赖项。只需在每条新 FROM 指令之前记下提交输出的最后一个镜像ID。每条 FROM 指令都清除先前的指令创建的任何状态;

可选的名称可以通过添加给与一个新的构建阶段 AS name 的 FROM 指令。该名称可用于后续 FROM 和 COPY --from=<name|index> 指示,以引用此阶段构建的镜像;

该tag或digest值是可选的。如果您忽略其中任何一个latest,那么缺省情况下构建器将采用标签。如果构建器找不到该tag值,则返回错误。

FROM指令支持由ARG 第一指令之前的任何指令声明的变量FROM。

ARG CODE_VERSION=latest

FROM base:${CODE_VERSION}

CMD /code/run-app

FROM extras:${CODE_VERSION}

CMD /code/run-extras

ARG在a之前的声明FROM位于构建阶段之外,因此不能在a之后的任何指令中使用它FROM。要ARG在第一次FROM使用声明之前使用默认值,请在ARG构建阶段使用没有值的指令:

ARG VERSION=latest

FROM busybox:$VERSION

ARG VERSION

RUN echo $VERSION > image_version

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
0相关评论

头条阅读
推荐图文
相关资讯
网站首页  |  物流配送  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  RSS订阅  |  违规举报  |  京ICP备14047533号-2
Processed in 0.114 second(s), 11 queries, Memory 1.49 M