You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么Docker的overlay2存储会显示为独立的挂载点?

问题答复

1. 该现象属于正常情况

你看到的overlay挂载点完全是Docker overlay2存储驱动的正常工作表现,不存在配置错误或后改分区的副作用:

  • Docker使用overlay2作为存储驱动时,每个运行中的容器都会创建一个独立的overlay联合挂载,将镜像只读层、容器可写层合并映射到/var/lib/docker/overlay2/<容器ID>/merged目录,供容器内部使用
  • 从你提供的docker info输出可以看到当前有22个正在运行的容器,和df输出里的22条overlay挂载记录完全对应
  • 因为/var/lib/docker本身是独立XFS分区,所以所有overlay挂载的容量统计和该分区一致,属于正常现象,完全不影响Docker和容器的正常运行。

2. 隐藏overlay挂载点的配置方法

不建议彻底从系统挂载表中移除这些记录(会影响容器运行和问题排查),通常有两种常用的隐藏方案:

方案1:仅在执行df查询时过滤(最推荐)

直接给df命令添加排除overlay类型的参数即可,临时使用执行:

df -x overlay

如果需要默认生效,可以给当前用户添加命令别名,编辑~/.bashrc文件,添加如下内容:

alias df='df -x overlay -x tmpfs'

保存后执行source ~/.bashrc即可立即生效,后续执行df默认不会显示overlay和tmpfs类型的挂载点,排查问题时直接执行/usr/bin/df就可以看到全量挂载记录。

方案2:全局隐藏overlay挂载(不推荐)

如果需要所有系统工具(mount、df、fdisk等)默认不显示overlay挂载,可以修改/etc/fstab中/var/lib/docker分区的挂载选项,添加x-systemd.hide-mountpoint=yes参数,修改后示例如下:

/dev/mapper/afsys-var_lib_docker /var/lib/docker xfs rw,seclabel,relatime,attr2,inode64,sunit=512,swidth=512,noquota,x-systemd.hide-mountpoint=yes 0 0

修改后执行mount -o remount /var/lib/docker即可生效,注意该配置会隐藏该分区下所有子挂载点,排查Docker相关问题时需要先临时移除该参数。

注意:绝对不要手动执行umount卸载这些overlay挂载点,会直接导致正在运行的容器文件系统异常、数据丢失。

内容的提问来源于stack exchange,提问作者JLuxton

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 08:54:01