ove*_*nge 10 docker dockerfile
Docker容器的主要目的是避免在每个容器中都携带guest OS,如下所示。
正如这里提到的,该FROM指令初始化一个新的构建阶段并为后续指令设置基础镜像。因此,有效的 Dockerfile 必须以FROM指令开头。
我的理解是,FROM <image>允许容器在其自己的操作系统上运行。
为什么一个有效的 Docker 文件必须有FROM指令?
容器不运行完整的操作系统,它们共享主机操作系统的内核(通常是 Linux 内核)。那是您右侧图像中的“主机操作系统”框。
不过,它们确实提供了所谓的“用户空间隔离”——粗略地说,这意味着每个容器都管理自己的操作系统部分的副本,这些副本在用户模式下运行——通常是 Linux 发行版,例如 Ubuntu。在您的右侧图像中,它将包含在“Bins/Libs”框中。
您可以FROM在 Dockerfile 中省略该行,或使用FROM scratch, 创建一个空白的基本映像,然后自己将所有用户模式部分添加到空白内核之上。
另一个常见用途FROM是将构建链接在一起以形成较小图像的多阶段构建。
例如,这对于限制自动构建失败期间的冗余重建很有用。
| 归档时间: |
|
| 查看次数: |
14472 次 |
| 最近记录: |