我的目录结构如下
cassandra
Dockerfile
downloads
225M file
我在cassandra目录中。我的构建命令是
docker build -t image_cassandra .
我知道它会发送.
当前目录中的所有内容。所以发送这个225M文件需要花费很多时间。我在Dockerfile中需要这个文件。
Add downloads/ /tmp/
我想避免这么多延迟。我知道,我们不能在docker ADD命令中使用../
。那么有没有办法减少构建上下文的大小并有这个ADD命令。
此文件不属于网络。所以我不能使用任何apt-get wget
语句。或者不可能?
答案 0 :(得分:1)
您可以将项目分成两个泊坞窗图像,一个不经常更改的大图像,以及一个可以快速更改的小图像。
Project1/
Dockerfile
bigfile
Project2/
Dockerfile
Project1 / Dockerfile如下所示:
FROM ubuntu
RUN apt-get install cassandra
ADD bigfile
然后,如果你构建它并用docker build -t project1 Project1
标记它,你可以使用Project2 / Dockerfile中的结果:
FROM project1
RUN fast configuration commands