首页 > 解决方案 > 为什么 docker 必须从 dockerfile 创建一个镜像,然后从该镜像创建一个容器,而不是从 Dockerfile 创建一个容器?

问题描述

为什么 docker 必须从 dockerfile 创建一个镜像,然后从该镜像创建一个容器,而不是直接从 Dockerfile 创建一个容器?

首先从 Dockerfile 创建映像然后从创建容器的目的/好处是什么?

- - -编辑 - - -

这个问题Docker 镜像和容器有什么区别? 不回答我的问题。

我的问题是:为什么我们需要从图像而不是 dockerfile 创建容器?首先从 Dockerfile 创建映像然后从创建容器的目的/好处是什么?

标签: dockerdockerfiledocker-containerdocker-image

解决方案


  • Dockerfile 是创建镜像的秘诀
  • 图像是一个虚拟文件系统
  • 容器是主机上正在运行的进程

您不希望每个主机都根据配方构建自己的映像。对于某些主机来说,只需下载图像并使用它会更容易。

创建图像可能非常昂贵。我有复杂的 Dockerfile,可能需要几个小时才能构建,可能会下载 50 GB 的数据,但仍然只能创建一个 200 MB 的图像,我可以将其发送到不同的主机。

从现有图像启动容器非常便宜。

如果您只有 Dockerfile 来启动镜像容器,那么整个工作流程将变得非常繁琐。


推荐阅读