关于Sending build context to Docker daemon 数据很大的问题

以往进行docker build的时候都是在新建的文件夹下面进行,这次为了图方便,就直接放在开发根目录下进行build,这样子问题就来了。于是就有了下面的文件大小发送量:

Sending build context to Docker daemon 4.309 GB

第一反应就是是不是当前目录都给发送过去了。查了下,果然是的,发现在 Docker client 会发送 Dockerfile 同级目录下的所有文件到Dockerdaemon

解决的方式就是之前第一句话说的,在一个新的文件夹中进行 build 这样子问题就不存在了,当然这样子会比较简洁,但是有时候脑袋就是这么直,我就是想要在根目录进行呢。这个时候该怎么办呢?——.dockerignore

没错了,在 Dockerfile 同级目录下添加一个 .dockerignore 文件。

.dockerignore 中添加需要忽略的文件或者文件夹即可。于是在添加之后:

Sending build context to Docker daemon 679.9 kB

还有一种情况就是同级目录选在了根目录上,没有选择项目所在的目录,也需要注意。