我想维护一个需要与pip
一起安装的依赖项的python应用程序的开发环境。
我计划将源代码(包括requirements.txt
)从git repo中拉出到作为docker卷安装的主机文件夹中。
是否有一个泊坞模式可以保持库的更新,但避免每pip install -r requirements.txt
个昂贵的git pull
?
答案 0 :(得分:0)
每次避免安装的方法是在拉出整个回购之前在单独的pip install
指令中执行RUN
。要做到这一点,您需要另一种方法将requirements.txt
放入容器 - 也许使用ADD
,指定完整的远程网址:
ADD https://raw.githubusercontent.com/etc/requirements.txt .
RUN pip install -r requirements.txt
当您docker build
时,如果requirements.txt
的内容未更改,则将使用包含所有已安装依赖项的缓存层。如果需求文件已更改,则安装将再次运行。
如果您使用此功能,您需要在需求文件中使用特定版本,并且您必须手动更新版本颠簸。