docker service inspect
描述 | 显示一个或多个服务的详细信息 |
---|---|
用法 | docker service inspect [OPTIONS] SERVICE [SERVICE...] |
Swarm 此命令适用于 Swarm 编排器。
描述
检查指定的 service。
默认情况下,此命令将所有结果渲染为 JSON 数组。如果指定了格式,则将对每个结果执行给定的模板。
Go 的 text/template 包描述了格式的所有细节。
注意
这是一个集群管理命令,必须在 Swarm 管理节点上执行。要了解管理器和工作节点,请参阅文档中的Swarm 模式部分。
选项
选项 | 默认值 | 描述 |
---|---|---|
-f, --format | 使用自定义模板格式化输出 'json':以 JSON 格式打印。 'TEMPLATE':使用给定的 Go 模板打印输出。 请参阅https://docs.dockerd.com.cn/go/formatting/了解更多关于使用模板格式化输出的信息。 | |
--pretty | 以用户友好的格式打印信息 |
示例
按名称或 ID 检查服务
您可以通过其名称或ID来检查服务。
例如,给定以下服务:
$ docker service ls
ID NAME MODE REPLICAS IMAGE
dmu1ept4cxcf redis replicated 3/3 redis:3.0.6
docker service inspect redis
和 docker service inspect dmu1ept4cxcf
都产生相同的结果。
$ docker service inspect redis
输出为 JSON 格式,例如:
[
{
"ID": "dmu1ept4cxcfe8k8lhtux3ro3",
"Version": {
"Index": 12
},
"CreatedAt": "2016-06-17T18:44:02.558012087Z",
"UpdatedAt": "2016-06-17T18:44:02.558012087Z",
"Spec": {
"Name": "redis",
"TaskTemplate": {
"ContainerSpec": {
"Image": "redis:3.0.6"
},
"Resources": {
"Limits": {},
"Reservations": {}
},
"RestartPolicy": {
"Condition": "any",
"MaxAttempts": 0
},
"Placement": {}
},
"Mode": {
"Replicated": {
"Replicas": 1
}
},
"UpdateConfig": {},
"EndpointSpec": {
"Mode": "vip"
}
},
"Endpoint": {
"Spec": {}
}
}
]
$ docker service inspect dmu1ept4cxcf
[
{
"ID": "dmu1ept4cxcfe8k8lhtux3ro3",
"Version": {
"Index": 12
},
...
}
]
格式化 (--pretty)
您可以使用--pretty
选项以易于阅读的格式打印检查输出,而不是默认的 JSON 输出。
$ docker service inspect --pretty frontend
ID: c8wgl7q4ndfd52ni6qftkvnnp
Name: frontend
Labels:
- org.example.projectname=demo-app
Service Mode: REPLICATED
Replicas: 5
Placement:
UpdateConfig:
Parallelism: 0
On failure: pause
Max failure ratio: 0
ContainerSpec:
Image: nginx:alpine
Resources:
Networks: net1
Endpoint Mode: vip
Ports:
PublishedPort = 4443
Protocol = tcp
TargetPort = 443
PublishMode = ingress
您也可以使用--format pretty
获得相同的效果。
格式化输出 (--format)
您可以使用 --format 选项获取有关服务的特定信息。例如,以下命令输出“redis”服务的副本数量。
$ docker service inspect --format='{{.Spec.Mode.Replicated.Replicas}}' redis
10