Docker 如何查询挂载的目录
Docker 如何查询挂载的目录要查询 Docker 容器的挂载目录最核心、最准确的方法是使用docker inspect命令。下面为你介绍几种从简到繁的实用方法。 方法一使用格式化命令最推荐这是最高效的方式可以清晰地列出所有挂载信息包括挂载类型、宿主机路径和容器内路径。请将容器名或ID替换为你的实际容器名称或 ID。dockerinspect容器名或ID--format{{range .Mounts}}{{.Type}}: {{.Source}} - {{.Destination}} ({{.Mode}}){{println}}{{end}}输出示例bind: /home/user/project - /app (rw) volume: my_data_volume - /var/lib/mysql (rw)Type: 挂载类型。bind表示绑定宿主机目录volume表示使用 Docker 管理的命名卷。Source: 宿主机上的源路径对于volume类型这里显示的是卷名。Destination: 容器内的目标路径。Mode: 读写权限rw为可读可写ro为只读。如果你想一次性查看所有正在运行的容器的挂载情况可以使用这条命令dockerinspect$(dockerps-q)--format{{printf \n %s .Name}}{{range .Mounts}}{{printf %-8s %-40s - %s\n .Type .Source .Destination}}{{end}} 方法二查看完整 JSON 信息如果你需要更详细的信息可以直接查看docker inspect输出的完整 JSON 数据并找到Mounts字段。dockerinspect容器名或ID在返回的 JSON 数据中寻找Mounts部分它会包含每个挂载点的详细信息如Type,Source,Destination,RW等。 方法三针对不同类型的挂载进行溯源1. 查找 Docker Volume 的真实路径当挂载类型为volume时Source字段只显示卷名。要找到该卷在宿主机上的真实存储路径需要使用docker volume inspect命令。# 首先列出所有卷dockervolumels# 然后查看指定卷的详细信息dockervolume inspect卷名在输出的 JSON 中Mountpoint字段的值就是该卷在宿主机上的绝对路径通常位于/var/lib/docker/volumes/卷名/_data。2. 进入容器内部验证你也可以直接进入容器通过查看系统挂载信息来验证。# 进入容器dockerexec-it容器名或IDsh# 在容器内部执行cat/proc/mounts# 或者mount|grep-vproc\|sys这些命令会列出容器内的所有挂载点你可以从中识别出由外部挂载进来的目录。