> 技术文档 > 我们如何知道docker 挂载了缩主机的哪个目录_docker查看挂载情况

我们如何知道docker 挂载了缩主机的哪个目录_docker查看挂载情况

要查看 Docker 容器挂载了宿主机的哪个目录,可以通过以下方法:

1. 使用 docker inspect 查看挂载信息

docker inspect 命令可以查看容器的详细信息,包括挂载的卷(volumes)和绑定挂载(bind mounts)。

(1) 查看容器挂载信息

运行以下命令:

docker inspect 
(2) 过滤挂载信息

使用 --format 参数或 jq 工具过滤出挂载信息:

docker inspect  --format=\'{{json .Mounts}}\' | jq

输出示例:

[ { \"Type\": \"bind\", \"Source\": \"/host/path\", \"Destination\": \"/container/path\", \"Mode\": \"rw\", \"RW\": true, \"Propagation\": \"rprivate\" }, { \"Type\": \"volume\", \"Name\": \"volume_name\", \"Source\": \"/var/lib/docker/volumes/volume_name/_data\", \"Destination\": \"/container/path\", \"Driver\": \"local\", \"Mode\": \"rw\", \"RW\": true, \"Propagation\": \"\" }]
  • Type:挂载类型,bind 表示绑定挂载(宿主机目录),volume 表示 Docker 卷。

  • Source:宿主机目录或卷路径。

  • Destination:容器内的挂载目标路径。

2. 使用 docker volume inspect 查看卷挂载

如果挂载的是 Docker 卷(volume),可以使用以下命令查看卷的详细信息:

docker volume inspect 

 输出示例:

[ { \"CreatedAt\": \"2023-10-01T12:00:00Z\", \"Driver\": \"local\", \"Labels\": {}, \"Mountpoint\": \"/var/lib/docker/volumes//_data\", \"Name\": \"\", \"Options\": {}, \"Scope\": \"local\" }]
  • Mountpoint:卷在宿主机上的实际路径。

3. 使用 docker-compose 的场景

如果使用 Docker Compose 启动容器,可以通过以下方式查看挂载信息:

(1) 查看 Compose 文件

检查 docker-compose.yml 文件中的 volumes 配置:

services: app: volumes: - /host/path:/container/path - volume_name:/container/pathvolumes: volume_name:

    /host/path:/container/path:绑定挂载。

 volume_name:/container/path:Docker 卷挂载。

(2) 查看容器挂载信息

使用 docker-compose 命令查看容器挂载信息:

docker-compose config

4. 总结

  • 绑定挂载:通过 docker inspect 查看 Source 字段,找到宿主机目录。

  • Docker 卷:通过 docker volume inspect 查看 Mountpoint 字段,找到卷在宿主机上的路径。

  • Docker Compose:检查 docker-compose.yml 文件中的 volumes 配置。

通过这些方法,你可以轻松查看 Docker 容器挂载的宿主机目录。