首页 > 解决方案 > docker FROM 和 RUN apt-get 有什么区别?

问题描述

我看到一些容器是从官方 Apache docker 映像创建的,而另一些容器是从使用 RUN apt get install 的 Debian 映像创建的。有什么区别?这里的最佳实践是什么,我应该更喜欢哪一个?

标签: docker

解决方案


这真的很基本。这两个命令的目的是不同的。

当您想为您的特定目的创建自己的图像时,您需要执行两个步骤:

  1. 找一个合适的基础镜像开始。那里有很多图像。那就是您使用 FROM 子句的地方...作为起点。

  2. 将图像专门用于更具体的目的。这就是您使用 RUN 将新东西安装到新映像中的地方,并且通常还使用 COPY 将脚本和配置添加到新映像中。

所以在你的情况下:如果你想控制 Apache 的安装,那么你从一个基本的 Debian 映像(FROM)开始,然后自己控制 Apache 上的安装(RUN)。或者,如果您想轻松找到 Apache 已经存在并准备运行的图像。


推荐阅读