正确使用Docker的pip

我想在容器中安装一些pip包。 微不足道的做法如下:

 FROM ubuntu:trusty RUN apt-get update && \ apt-get install python-pip <lots-of-dependencies-needed-only-for-pip-install> RUN pip install <some-packages> 

但是,这样我就安装了很多不需要的依赖项,这就不必要地增加了容器的大小。

我的第一个想法是做到这一点:

 FROM ubuntu:trusty AS pip_install RUN apt-get update && \ apt-get install python-pip <lots-of-dependencies-needed-only-for-pip-install> RUN pip install <some-packages> FROM ubuntu:trusty RUN apt-get update && \ apt-get install python-pip <runtime-dependencies> COPY --from=pip_install /usr/local/bin /usr/local/bin COPY --from=pip_install /usr/local/lib/python2.7 /usr/local/lib/python2.7 

这工作,但感觉像一个解决方法。 有没有更好的做法呢? 我想到了这样的事情:

 FROM ubuntu:trusty AS pip_install RUN apt-get update && \ apt-get install python-pip <lots-of-dependencies-needed-only-for-pip-install> RUN pip install <some-packages> VOLUME /usr/local FROM ubuntu:trusty <somehow mount /usr/local from pip_install to /tmp/pip> RUN apt-get update && \ apt-get install python-pip <runtime-dependencies> RUN pip install <from /tmp/pip> <some-packages> 

这甚至有可能吗?

我可以使用一些python图像,但在我真正的应用程序中,我从另一个图像派生自ubuntu:trusty 。 至于这个问题,这是没有关系的。