格式化命令并输出日志

预计阅读时间:2分钟

Docker使用Go模板,您可以使用它们来操纵某些命令和日志驱动程序的输出格式。

Docker提供了一组基本功能来操纵模板元素。所有这些示例都使用该docker inspect命令,但是许多其他CLI命令都具有一个--format标志,并且许多CLI命令参考都包括自定义输出格式的示例。

笔记

使用该--format标志时,需要注意您的外壳环境。在Posix Shell中,可以使用单引号运行以下命令:

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 ":"}}'

标题🔗

title 大写字符串的第一个字符。

docker inspect --format "{{title .Name}}" container

🔗

upper 将字符串转换为大写形式。

docker inspect --format "{{upper .Name}}" container

打印🔗

println 在新行上打印每个值。

docker inspect --format='{{range .NetworkSettings.Networks}}{{println .IPAddress}}{{end}}' container

暗示🔗

要找出可以打印哪些数据,请将所有内容显示为json:

docker container ls --format='{{json .}}'
格式格式输出模板日志