docker inspect 是查看容器(或镜像、网络、卷等)底层详细信息的核心命令,返回 json 格式元数据,涵盖配置、状态、网络、挂载等全部结构化信息;支持按名或 id 查询,可用 -f 精准提取字段,结合 jq 或导出文件提升可读性。

docker inspect 是查看容器(或镜像、网络、卷等)底层详细信息的核心命令,它返回的是 JSON 格式的元数据,包含容器的配置、状态、网络、挂载、资源限制等全部结构化信息。
基础用法:查看容器基本信息
最常用的方式是传入容器 ID 或容器名:
-
docker inspect my-nginx —— 查看名为
my-nginx的容器 -
docker inspect a1b2c3d4e5f6 —— 查看 ID 开头为
a1b2c3d4e5f6的容器(支持短 ID)
输出内容很长,包含 Id、Created、Status、NetworkSettings、Mounts、HostConfig 等数十个字段。
精准提取特定字段:用 -f(format)参数
避免手动翻找 JSON,直接提取关键值:
在 Linux 上通过 Docker 运行 OpenClaw,并使用 Tailscale 实现远程访问。⚠️ 涉及 sudo、Docker、Tailscale和凭证挂载——请先查阅安全章节...
-
docker inspect -f '{{.State.Status}}' my-nginx → 输出
running - docker inspect -f '{{.NetworkSettings.IPAddress}}' my-nginx → 获取容器 IPv4 地址(仅 bridge 网络下有效)
-
docker inspect -f '{{.NetworkSettings.Networks.my-net.IPAddress}}' my-nginx → 查指定自定义网络
my-net中的 IP - docker inspect -f '{{.HostConfig.Memory}}' my-nginx → 查内存限制(字节数,0 表示无限制)
注意:{{.xxx}} 中的路径需严格匹配 JSON 层级,大小写和嵌套关系不能错;空格敏感,建议用单引号包裹整个 format 字符串。
查看更实用的运行时信息
一些高频查询场景及对应命令:
-
docker inspect -f '{{.Path}} {{.Args}}' my-nginx → 查启动命令(如
/docker-entrypoint.sh['nginx', '-g', 'daemon off;']) - docker inspect -f '{{.Mounts}}' my-nginx → 查挂载列表(显示 bind mount 或 volume 映射)
-
docker inspect -f '{{json .NetworkSettings.Ports}}' my-nginx → 查端口映射(
json函数美化输出) - docker inspect -f '{{.LogPath}}' my-nginx → 查容器日志文件在宿主机上的绝对路径
小技巧与注意事项
- 容器必须存在(已创建),哪怕已停止也能 inspect;已删除的容器无法查看
- 想看格式化后的 JSON?加
| jq(需安装 jq 工具):docker inspect my-nginx | jq '.' - inspect 不仅限于容器,同样适用于镜像:docker inspect nginx:alpine
- 多个容器可一次 inspect:docker inspect container1 container2,返回数组
不复杂但容易忽略:inspect 返回的是容器“当前快照”,不是实时流式数据;所有字段都来自容器创建时的配置 + 运行时状态,是调试、自动化脚本和故障定位的重要依据。










