【发布时间】:2016-04-02 22:53:20
【问题描述】:
我目前正在构建一个 docker 映像并运行容器以在其中为我正在处理的 Python 应用程序运行一些测试。目前,Dockerfile 从主机复制文件,将工作目录设置为那些复制的文件,运行 sudo apt-get 并安装 pip,最后从 setup.py 运行测试。 Dockerfile 如下所示。
FROM ubuntu
ADD . /home/dev/ProjectName
WORKDIR /home/dev/ProjectName
RUN apt-get update && \
apt-get install -y python3-pip && \
python3 setup.py test
我很好奇是否有更传统的方法可以避免每次我想运行测试时都运行apt-get 和apt-get install pip。我的主要想法是构建一个上面已经有 pip 的图像,然后从那个图像构建这个图像。
【问题讨论】:
-
除了已接受的答案之外,任何时候您想对 Dockerfile 进行更改但希望最小化构建时间,请将更改添加到 Dockerfile 的末尾,以便 Docker 尽可能多地重用缓存。 Docker 将从所做更改的第一行开始重建。
标签: python docker dockerfile