格式化命令和日志输出
目录
Docker 支持 Go 模板,您可以 可用于操作某些命令和日志驱动程序的输出格式。
Docker 提供了一组基本函数来操作模板元素。
所有这些示例都使用 command ,但许多其他 CLI
命令有一个标志,并且许多 CLI 命令引用
包括自定义输出格式的示例。docker inspect
--format
注意
使用该标志时,您需要观察您的 shell 环境。 在 POSIX shell 中,您可以使用单个引号运行以下内容:
--format
$ docker inspect --format '{{join .Args " , "}}'
否则,在 Windows shell(例如 PowerShell)中,您需要使用单引号,但 对参数内的双引号进行转义,如下所示:
$ docker inspect --format '{{join .Args \" , \"}}'
加入
join
连接字符串列表以创建单个字符串。
它在列表中的每个元素之间放置一个分隔符。
$ docker inspect --format '{{join .Args " , "}}' container
桌子
table
指定要查看其输出的字段。
$ docker image list --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}\t{{.Size}}"
JSON 格式
json
将元素编码为 JSON 字符串。
$ docker inspect --format '{{json .Mounts}}' container
降低
lower
将字符串转换为其小写表示形式。
$ docker inspect --format "{{lower .Name}}" container
分裂
split
将字符串切片为由分隔符分隔的字符串列表。
$ docker inspect --format '{{split .Image ":"}}' container
标题
title
将字符串的第一个字符大写。
$ docker inspect --format "{{title .Name}}" container
上
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 .}}'