我真的不明白.dockerignore
是如何运作的。
是否打算像以下一样使用:
*.md
.dockerignore
放入容器中。test.md
的新文件,并将此容器提交给新图像。答案 0 :(得分:7)
在解释.dockerignore文件的使用之前,我们必须花一点时间了解docker build
的作用。
使用docker build
命令从Dockerfile构建映像时,守护程序将创建上下文。该上下文包含您执行命令的目录中的所有内容。
.dockerignore
文件允许您从上下文中排除文件,例如.gitignore文件允许您从git存储库中排除文件。
通过从构建中未使用的上下文大文件或存储库中排除,有助于使构建更快更轻。
答案 1 :(得分:3)
docker build
有tar
个CONTEXT
目录,并将其发送到docker daemon
。这是因为daemon
和client
可能不存在于同一台服务器上。
tar
和网络发送是未使用的文件可以减慢构建速度的原因。即使daemon
在本地运行,也会发生这种情况。
答案 2 :(得分:0)
不,不要那样做。然后我把这个.dockerignore放在容器里。
.dockerignore
文件与Dockerfile
位于同一目录中,旨在通过在构建时排除来加速docker build
命令不会用于构建docker镜像的文件。