docker - COPY 命令是否创建中间容器?
问题描述
该命令是否像COPY
命令一样创建一个中间容器来复制文件RUN
?我在文档中没有找到任何对此的参考。
解决方案
它实际上并没有创建容器。
在经典构建器中,Builder.performCopy()
通过组装增强图像的步骤:获取基础图像,创建新层,实际将文件复制到新层,然后构建新图像。虽然有一个名为runConfigWithCommentCmd
this 的变量,但它只是设置在docker history
.
相比之下,dispatchRun()
它实际上经历了创建和启动容器的机制。请记住,容器从根本上包装了单个命令,并且在COPY
没有可以运行的明显命令的情况下(就此而言,也不能保证容器中有任何可运行的命令;考虑一个FROM scratch
图像)。
推荐阅读
- visual-studio-code - 在 Mac 上的 Vscode 中设置 pylint 时出错
- python - Python 错误:IndexError:家谱程序的字符串索引超出范围
- assembly - 在 MIPS 中,我需要使用重复加法计算指数的程序,以及可以使用重复减法解决除法的程序
- javascript - 在 localhost 中为 FastApi 获取 JavaScript
- mongodb - 如何在 Mongodb 中使用“id”而不是“_id”保存文档
- filter - 如何使用按钮在 PowerApps 中显示来自 excel 表的过滤数据?
- python - TabError:缩进中制表符和空格的使用不一致(除了:^)
- reactjs - 刷新页面时 Firebase 身份验证出现问题
- django - 这是在带有 inlineformset_factory 的 Django 中使用 CreateView 的正确方法吗?
- python - 根据 shapefile 的值实现更改点颜色的最佳方法是什么?