?
This document uses PHP Chinese website manual Release
返回 Docker 對象的低級信息。
docker inspect [OPTIONS] NAME|ID [NAME|ID...]
名稱,簡寫 | 默認 | 描述 |
---|---|---|
--format, -f | 使用給定的Go模板格式化輸出 | |
--size, -s | false | 如果類型是容器,則顯示總文件大小 |
--type | 返回指定類型的JSON |
命令 | 描述 |
---|---|
docker | Docker CLI的基本命令。 |
ker檢查提供了由Docker控制的構造的詳細信息。
默認情況下,docker inspect
會將結果呈現在JSON數組中。
在大多數情況下,您可以以相當簡單的方式從 JSON 中選擇任何字段。
$ docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $INSTANCE_ID
$ docker inspect --format='{{range .NetworkSettings.Networks}}{{.MacAddress}}{{end}}' $INSTANCE_ID
$ docker inspect --format='{{.LogPath}}' $INSTANCE_ID
$ docker inspect --format='{{.Config.Image}}' $INSTANCE_ID
可以循環(huán)遍歷結果中的數組和映射以生成簡單的文本輸出:
$ docker inspect --format='{{range $p, $conf := .NetworkSettings.Ports}} {{$p}} -> {{(index $conf 0).HostPort}} {{end}}' $INSTANCE_ID
在.Field
當字段名稱以數字開頭,但模板語言的語法不工作index
的功能一樣。該.NetworkSettings.Ports
部分包含內部端口映射到外部地址/端口對象列表的映射。要抓取數字公共端口,您可以使用它index
來查找特定端口映射,然后在index
其中包含第一個對象。然后我們要求HostPort
現場獲得公開地址。
$ docker inspect --format='{{(index (index .NetworkSettings.Ports "8787/tcp") 0).HostPort}}' $INSTANCE_ID
如果您請求一個本身是包含其他字段的結構的字段,默認情況下,您將得到內部值的 Go 樣式轉儲。Docker 添加了一個模板函數,json
,它可以應用于以 JSON 格式獲得結果。
$ docker inspect --format='{{json .Config}}' $INSTANCE_ID