FROM命令
时间: 2023-06-30 13:20:08 浏览: 144
`FROM`是Dockerfile中的一条指令,用于指定当前镜像所要基于哪个镜像构建。语法格式如下:
```
FROM <image>[:<tag>] [AS <name>]
```
其中,`<image>`是要基于的镜像名称或ID,`<tag>`是要使用的镜像标签或版本号。`AS <name>`是可选的,用于给当前阶段指定一个自定义的名称。如果省略`<tag>`,则默认使用`latest`标签。例如:
```
FROM ubuntu:18.04
```
这条指令表示当前镜像要基于Ubuntu 18.04构建。
在一个Dockerfile中可以使用多个`FROM`指令,这样可以基于不同的镜像创建多个构建阶段。在某些情况下,这种方式可以有效地减少镜像大小和构建时间。例如:
```
FROM ubuntu:18.04 AS builder
RUN apt-get update && apt-get install -y build-essential
FROM ubuntu:18.04
COPY --from=builder /usr/bin/gcc /usr/bin/gcc
```
这里使用了两个`FROM`指令,第一个指令基于Ubuntu 18.04创建了一个名为`builder`的构建阶段,第二个指令基于同样的镜像创建了最终的镜像。在第二个指令中,使用了`COPY --from=builder`命令从`builder`阶段复制了`/usr/bin/gcc`文件到最终镜像中。
阅读全文