1、docker service inspect 简介
docker service inspect
命令是用于显示一个或多个服务的详细信息。它提供了关于服务的各种属性和配置的详细视图。
默认情况下,该命令以 JSON 数组的形式输出所有结果。如果指定了格式,将会为每个结果执行给定的模板。
可以通过 Go 的 text/template
包来了解格式的详细信息。
注意:
此命令是集群管理命令,必须在 Swarm 管理节点上执行。有关管理节点和工作节点的信息,请参阅文档中的 Swarm 模式部分。
参考文档:https://docs.docker.com/engine/reference/commandline/service_inspect/
2、docker service inspect 语法
docker service inspect [OPTIONS] SERVICE [SERVICE...]
3、docker service inspect 命令
1)按名称或 ID 检查服务
可以通过名称或 ID 检查一个服务。
例如,假设有以下服务:
docker service ls ID NAME MODE REPLICAS IMAGE dmu1ept4cxcf redis replicated 3/3 redis:3.0.6
通过以下命令可以检查服务,可以使用服务的名称或 ID:
docker service inspect redis
例如,以下两个命令都会产生相同的结果:
docker service inspect dmu1ept4cxcf
输出结果是以 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 }, ... } ]
2)格式化输出(--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 来达到相同的效果。
3)格式化输出(--format)
可以使用 --format
选项来获取有关服务的特定信息。例如,以下命令输出“redis”服务的副本数量:
docker service inspect --format='{{.Spec.Mode.Replicated.Replicas}}' redis 10
4、命令选项
名称 | 默认值 | 描述 |
--format, -f | 使用自定义模板格式化输出。 'json':以 JSON 格式打印。 'TEMPLATE':使用给定的 Go 模板打印输出。 有关使用模板格式化输出的更多信息, 请参考 | |
--pretty | 以人类友好的格式打印信息。 |
5、子命令
命令 | 描述 |
docker service create | 创建新的服务 |
docker service inspect | 显示一个或多个服务的详细信息 |
docker service logs | 获取一个服务或任务的日志 |
docker service ls | 列出服务 |
docker service ps | 列出一个或多个服务的任务 |
docker service rm | 删除一个或多个服务 |
docker service rollback | 恢复服务配置的更改 |
docker service scale | 缩放一个或多个复制的服务 |
docker service update | 更新一个服务的配置 |