分享好友 资讯首页 频道列表

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

2020-11-02 18:005130

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
AWS Amazon FSx for Lustre 支持 Elastic Fabric Adapter 和 Nvidia GPUDirect Storage
通过使用 AWS 可扩展可靠数据报 (SRD) 协议来提高网络吞吐量利用率,并在数据传输期间绕过操作系统,从而提高工作负载性能。

0评论2024-12-04789

金融服务业的混合多云采用率将增加两倍
金融服务业的混合多云采用率将增加两倍

0评论2024-07-06742