【发布时间】:2018-08-19 15:18:56
【问题描述】:
我有几个相互依赖的基于 Docker 的项目:
-
project 1取决于python:3-alpine -
project 2取决于project 1 -
project 3取决于project 1
等等。等等
因此,我所有的自动构建都如上所述链接。当我更新项目 2 时,项目 3 4 5 都会自动重建。这是一个非常巧妙的功能。
问题是,这意味着每当更新较低级别的项目时,都会触发大量项目的大量重建。在更新非常低级别的东西的情况下,例如python 或node,我可以想象 Docker Hub 正在触发大量重建。
然后我的问题是:这不会给像 PyPI 这样的包主机带来很多负担吗?因为我的每个项目都包含类似这样的一行:
RUN pip install -r requirements.txt
这会使 PyPI 降低所有要求,每次都重新下载而无法使用本地缓存,因为 Docker 容器对于每个构建都是“全新的”。
我可以做些什么来减少我的项目正在产生的影响,或者这是否通过 Docker Hub 上的“魔法”以某种方式解决?在没有这种魔力的情况下,是否有我应该遵循的最佳实践?
【问题讨论】:
标签: python docker dockerfile pypi dockerhub