为什么我们需要在Dockerfile中运行安装之前运行更新?

时间:2016-12-04 21:57:40

标签: docker dependencies

当我尝试在Dockerfile中为我的应用程序指定Boost库时,我必须执行

RUN apt-get update && apt-get install libboost-dev

如果我只是添加

RUN apt-get install libboost-dev

我收到了错误:

returned a non-zero code: 100

这背后的理论是什么?

感谢。

1 个答案:

答案 0 :(得分:10)

基本图像通常在末尾使用apt-get clean构建,以删除包列表的本地缓存,从而减少图像大小。当您开始构建此类图像时,包列表为空,apt-get找不到任何包。 apt-get update下载最新的软件包列表,允许后续的apt-get install查找,下载和安装软件包。