首页 > 解决方案 > 只查看 `docker service ps xxx` 结果中的 ERROR 列?

问题描述

我知道--format选项的使用,但不知何故它不适用于某些字段(适用于ID字段),也许对象图是隐藏在这里的东西。

以下是运行时显示的所有列docker service ps my_service_id

ID - 名称 - 图像 - 节点 - 所需状态 - 当前状态 - 错误 - 端口

现在我只想通过使用以下命令来显示 ERROR 列以便于阅读:

docker service ps --format '{{.ERROR}}' my_service_id

但是它不起作用并打印以下错误:

模板解析错误:模板::1:3:在 <.ERROR> 处执行“”:无法评估类型 *task.taskContext 中的字段错误

标签: dockercommand-line-interface

解决方案


我无法将大写字母与--format标志结合使用,但有效的是使用例如'{{ .Status }}'. 它似乎区分大小写,并且呈现的表在每列上总是有大写字母,可能在客户端(Docker CLI)上完成。

发出不同子命令时返回(和渲染)的数据类型将在其中导出字段,在 Golang 中,这意味着字段名称以大写字母开头。但情况并非总是如此,例如在使用首字母缩略词时。考虑到我们在后台使用Golang 模板,我可能错了。

以下命令是否输出您想要的?

docker service ps --format '{{ .Error }}' my_service_id

推荐阅读