格式化指令和日誌輸出
目錄
Docker 支援 Go 樣板,您可以使用它來控制特定命令和日誌驅動程式的輸出格式。
Docker 提供一組基本函數來操作樣板元素。所有這些範例都使用 docker inspect
命令,但許多其他 CLI 命令都有一個 --format
旗標,而且許多 CLI 命令參考都包含自訂輸出格式的範例。
**注意**
使用
--format
旗標時,您需要注意您的 shell 環境。在 POSIX shell 中,您可以使用單引號執行以下命令$ docker inspect --format '{{join .Args " , "}}'
否則,在 Windows shell(例如,PowerShell)中,您需要使用單引號,但將參數內的雙引號逸出,如下所示
$ docker inspect --format '{{join .Args \" , \"}}'
join
join
將字串串列串連起來以建立單一字串。它會在串列中的每個元素之間放置一個分隔符號。
$ docker inspect --format '{{join .Args " , "}}' container
table
table
指定您想要查看其輸出的欄位。
$ docker image list --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}\t{{.Size}}"
json
json
將元素編碼為 json 字串。
$ docker inspect --format '{{json .Mounts}}' container
lower
lower
將字串轉換為小寫表示形式。
$ docker inspect --format "{{lower .Name}}" container
split
split
將字串切片成由分隔符號分隔的字串串列。
$ docker inspect --format '{{split .Image ":"}}' container
title
title
將字串的第一個字元大寫。
$ docker inspect --format "{{title .Name}}" container
upper
upper
將字串轉換為大寫表示形式。
$ docker inspect --format "{{upper .Name}}" container
println
println
將每個值列印在新行上。
$ docker inspect --format='{{range .NetworkSettings.Networks}}{{println .IPAddress}}{{end}}' container
提示
要找出可以列印哪些資料,請將所有內容顯示為 json
$ docker container ls --format='{{json .}}'