发送docker构build上下文

我的目录结构如下

cassandra Dockerfile downloads 225M file 

我在cassandra目录里面。 我的构build命令是

  docker build -t image_cassandra . 

我知道它会发送所有的内容. 当前目录。 所以发送这个225M文件需要很多时间。 我需要在我的Dockerfile中的这个文件。

  Add downloads/ /tmp/ 

我想避免这么多的延迟。 而且我知道,我们不能在docker ADD命令中使用../ 。 那么有什么办法可以减less构build上下文的大小,并有这个ADD命令。

这个文件不是networking的一部分。 所以我不能使用任何apt-get wget语句。 或者是不可能的?

您可以将项目分成两个docker图像,一个很less更改的大码图像,一个可以快速更改的小docker图像。

 Project1/ Dockerfile bigfile Project2/ Dockerfile 

Project1 / Dockerfile看起来像这样:

 FROM ubuntu RUN apt-get install cassandra ADD bigfile 

然后,如果您使用docker docker build -t project1 Project1构build它并对其进行标记,则可以使用Project2 / Dockerfile中的结果:

 FROM project1 RUN fast configuration commands