docker - docker构建上下文和敏感数据
问题描述
这个问题的标题可能表明它已经得到了回答,但相信我,我在这里进行了深入的搜索:-)
据我了解,在构建 docker-image 时,当前文件夹将被打包并作为构建上下文发送到 docker-deamon。从这个构建上下文中,docker-image 是通过“添加”或“复制”文件和“运行”Dockerfile 中的命令来构建的。
此外:如果我在 DockerFile 的文件夹中有敏感的配置文件,这些文件将作为构建上下文的一部分发送到 docker-deamon。
现在我的问题是: 假设我没有在我的 Dockerfile 中使用任何 COPY 或 ADD ......这些配置文件会包含在 docker-image 的某个地方吗?我在图像中运行了一个 bash 并且找不到配置文件,但也许它们仍然在图像的更深层中的某个地方?
基本上我的问题是:构建的上下文是否会存储在图像中?
解决方案
正如您所说的那样COPY
,操作会创建图层,因此,只有这些操作会向图像添加一些ADD
内容。RUN
构建上下文只是具有这些操作(特别是COPY
和ADD
)在构建映像时可以访问的资源的目录。但它不像“基础层”。
事实上,你说你运行了 bash 并仔细检查了那里没有敏感的东西。确保这一点的另一种方法是检查图像的图层。为此,docker history --no-trunc <image>
推荐阅读
- openlayers - OpenLayers 6:地图渲染不会在缩放时发生
- c - 即使条件为真,C If() 语句也不会运行
- c++ - 关于实例化上下文的问题
- python - 用 Pickle5 代替 PyArrow 的序列化/反序列化?
- tcp - 使用 NGrock 和 Metasploit 的问题
- flutter - 如何在颤动中显示来自botton的下拉列表
- javascript - 在 qrcodejs 中添加徽标
- javascript - 如何在 PHP 上制作 AJAX wȯrk?
- python - 如何将自创广告分发到 django 项目中?
- javascript - 如何与未聚焦/alt 选项卡式 chrome 窗口/选项卡进行交互