我经历过,移除了与正在运行的容器相关联的图像的下层(差异).(因此删除了容器中的某些文件)
我认为Docker信息中的"Native Overlay Diff"选项非常可疑.
我的码头信息如下:
$ docker info
...
Storage Driver: overlay2
Backing Filesystem: xfs
Supports d_type: true
Native Overlay Diff: false
...
Run Code Online (Sandbox Code Playgroud)
你们知道'Native Overlay Diff'的确切含义吗?
这似乎与内核选项有关,在KconfigOVERLAY_FS_REDIRECT_DIR中描述为:
config OVERLAY_FS_REDIRECT_DIR
bool "Overlayfs: 默认开启重定向目录功能"
取决于 OVERLAY_FS
帮助如果启用此配置选项,则默认情况下重命名目录时覆盖文件系统将使用重定向。在这种情况下,仍然可以使用“redirect_dir=off”模块选项全局关闭重定向,或者使用“redirect_dir=off”挂载选项在文件系统实例上关闭重定向。
请注意,重定向不向后兼容。也就是说,在不支持此功能的内核上安装具有重定向功能的覆盖层将会产生意外结果。
如果不确定,请选 N。
关于 moby 问题34342和34320的一些讨论表明,如果以下所有条件均为真:
OVERLAY_FS_REDIRECT_DIR已启用redirect_dir=off非空目录被重命名为 docker 构建的一部分,例如在 Dockerfile 中,如下所示:
FROM busybox
RUN mkdir /dir1
RUN touch /dir1/newfile
RUN mv /dir1 /dir2
Run Code Online (Sandbox Code Playgroud)然后,生成的映像将无法正确记录重命名目录的内容(即 dir2 将不包含 newfile),因为目录重命名是使用扩展文件属性 (xattr) 实现的重定向,而 docker 归档过程无法理解该属性。为了解决这个问题,当满足上述前三个条件时,docker 将使用“naive”diff 驱动程序,它可以生成正确的图像,但比“native”diff 驱动程序慢。
忽略警告似乎是安全的,但如果您发现构建速度缓慢,那么您可以尝试使用/var/lib/docker选项重新安装卷redirect_dir=off。
| 归档时间: |
|
| 查看次数: |
2999 次 |
| 最近记录: |