问题标签 [dockerignore]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
112 浏览

docker - 从 Docker 基础映像中排除文件/文件夹

我们正在使用 Twistlock 来查找 docker 镜像中的安全漏洞。

不幸的是,我们在 docker 基础镜像中看到了一些安全问题(例如:Alpine、Logstash、自定义构建的 Docker 镜像)。作为修复,我们将继续升级到可用的最新版本。不幸的是,对于自定义构建的 Docker 映像,除了使用它之外,我们没有任何控制权。

只是想知道是否有办法排除 docker 基础映像中的文件/文件夹,如下所示

我遇到了 dockerignore 文件的用法,但我相信它们用于忽略当前项目中的文件/文件夹,而不是基本 docker 映像中的文件/文件夹。

有人可以在这里分享一些输入吗?

0 投票
2 回答
1297 浏览

reactjs - 如何在 React 的 Docker-Compose 中配置 .env 文件?

我已经.env在 docker ignore 中添加了,并且在构建图像后环境变量未定义,那么如何在docker-compose.yml文件中配置这些环境变量

我们是否也应该docker-compose.yml忽略?

码头工人-compose.yml

.env

.dockerignore

0 投票
0 回答
12 浏览

markdown - .gitignore 和 .dockerignore 语言是如何命名的,以及如何告诉 Markdown 中的代码块使用高亮显示?

我正在README.md为我在工作中开发的程序编写一个。我希望它显示在程序的 GitLab 存储库页面上。该程序会自动打印给定文件夹中的文件,然后将它们移动到另一个文件夹。我开发了一个简单的类似 gitignore 的函数,它使某些文件(在名为 的文件中指定.printignore)被忽略。我想写一些关于如何将文件结构化为.printignore文件的示例README.md

例如,我知道我可以写作,js或者python在开场后```立即使用特定语言的语法。但是,我无法找出类似 gitignore 的语言是如何被调用的。我可以使用其他至少格式化评论的语言,但如果可能的话,我宁愿不这样做。

.gitignore和的标记语言是否.dockerignore有特定的名称?是否可以告诉降价语言使用它的语法?

0 投票
1 回答
310 浏览

docker - .dockerignore 文件位于子目录中

我知道我可以将文件放在与忽略某些模式.dockerignore相同的目录中,这很有效。dockerfile不过,Docker 似乎没有.dockerignore在目录结构中递归地看到文件。

我有一个目录,它是一个 git 子模块。我想将内容添加到.dockerignore子模块中的文件中,以便使用此共享存储库的多个项目可以继承它。

有没有办法手动将.dockerignore文件包含到当前上下文中dockerfile

0 投票
0 回答
64 浏览

docker - 如何排除 .dockerignore 中的 .go 文件以外的所有内容?

所以,我有一个虚拟项目,其文件结构如下所示:

我的 Dockerfile 看起来像这样:

我使用命令构建此图像docker build . -t docker-magic:test --no-cache以避免缓存结果。

这个想法很简单 - 我将文件docker-magic夹中的所有文件复制到我的图像中,然后通过find . -type f.

我也想忽略一些文件。我用一个.dockerignore文件来做到这一点。根据官方 Docker 文档

的摆放位置!异常规则会影响行为:与特定文件匹配的 .dockerignore 的最后一行决定了它是包含还是排除。

让我们考虑以下内容.dockerignore

它应该排除所有 .go 文件。确实如此!我从 find 中得到以下内容:

接下来,让我们忽略一切。.dockerignore就是现在:

而且,正如预期的那样,我从 find 得到空输出。

现在变得困难了。我想忽略除 .go 文件之外的所有文件。根据文档,它将如下:

但我从 find 中得到以下输出:

这显然不是预期的,因为正如我们所见,其他 .go 文件也匹配此模式。如何获得我想要的结果 - 仅将 .go 文件复制到我的图像?

编辑:我的 Docker 版本是20.10.5, build 55c4c88.

0 投票
1 回答
60 浏览

docker - .dockerignore - 排除某些文件类型以外的目录

我有一个.dockerignore文件,我想在其中排除整个目录,但该目录中的/src所有.json文件/src除外。

我目前的方法如下所示:

我也尝试过使用/src而不是/src/*,但在这两种情况下都排除了整个目录,并且找不到 JSON 文件。

0 投票
2 回答
195 浏览

docker - .dockerignore 工作流程不清楚

我有一个关于.dockerignore工作流程的问题,在浏览文档和不同的 Internet 主题时我无法真正理解。

具有以下文件夹结构:

在我的 dockerfile 中,我想复制目录的内容,所以我使用

.dockerignore我有:

我指的是一个不存在的文件夹 - folder_3,它应该被复制,对吧?我运行了它,看起来没有问题,因此.dockerignore以某种方式管理了这种情况。

如果我尝试在不使用.dockerignore的情况下做同样的事情,以不存在的目录为目标,我会收到错误消息。

如果有人可以清除此工作流程,或者如果重复,请附上一些信息,以便我进行自我教育。

提前致谢!

0 投票
1 回答
105 浏览

docker - 忽略 Dockerfile.dockerignore 中的特定文件不起作用

这是我的问题:我想在构建名为django. 但是在玩Dockerfile.dockerignore文件时,我没有成功我想要的,我不知道要采用哪种语法来做到这一点。

回购结构如下

docker-compose.yml用来构建的内容如下:

如您所见,上下文是root_dir而不是django(因为我需要documentation在构建时从 dir 复制一些东西)。

构建图像时我需要什么

  • django 代表
  • 文档代表

构建图像时我想忽略的内容

  • 除了目录之外django的所有内容documentation
  • Dockerfile 和 Dockerfile.dockerignore
  • 还有一些其他的东西(虚拟环境等*.pyc,但我们会坚持这个问题!)DockerfileDockerfile.dockerignore

为了这样做,我的Dockerfile.dockerignore样子:

但我的问题是我想忽略的文件仍然存在于我的图像中!这对我不利。我想我尝试了任何可能的语法 ( **/, */*/......) 但我找不到适合我需要的语法。

如果你能帮助我,非常感谢!

编辑:对于那些想知道该Dockerfile.dockerignore文件的人,您可以在这里查看:https ://docs.docker.com/engine/reference/commandline/build/#use-a-dockerignore-file

0 投票
0 回答
110 浏览

docker - Docker COPY cmd that respects .dockerignore?

I have a folder tmpdata with slightly different permissions at the top level of my project, which is used by a separate container to be able to restart with data.

I list this tmpdata/ folder in my .dockerignore file because I don't want it to be part of the build for the main app.

In my Dockerfile, I do have a COPY . . directive though. I thought it would copy everything except whatever's listed in .dockerignore, but when I try to build, I get:

My question is, why isn't the .dockerignore file preventing the build process from even trying to touch this folder? Is there a way to have the COPY command respect (ignore) entries in the .dockerignore file?

UPDATE even after refactoring the dockerfile to use selective COPY commands that only copy needed files, docker build still fails, complaining about the same tmpdata folder.

UPDATE 2 my docker ignore file:

0 投票
1 回答
571 浏览

python - 为什么我的 .Dockerignore 文件不忽略文件?

当我构建容器并检查应该被忽略的文件时,它们中的大多数都没有被忽略。

这是我的文件夹结构

假设我想忽略__pycache__& datadocker-compose up创建容器时将使用命令创建数据)文件夹和.gitignore&.env文件。

我将在下一个.dockerignore文件中忽略这些

最终的结果是只有git&.env文件被忽略了。数据文件夹未被忽略,但无法从容器中访问。文件夹也__pycache__没有被忽略。

这是泊坞窗文件。

码头工人-compose.yml

Dockerfile