docker service inspect

読む時間の目安: 3 分

説明

サービスの詳細情報を表示します。

API 1.24 以上  このコマンドを利用するには、クライアントとデーモンの API はともに、最低でも 1.24 である必要があります。 クライアント上においてdocker versionコマンドを実行して、クライアントとデーモンの API バージョンを確認してください。

Swarm このコマンドは Swarm オーケストレーターにおいて動作します。

利用方法

$ docker service inspect [オプション] SERVICE [SERVICE...]

追加説明

指定されたサービスの情報を表示します。

デフォルトで JSON 配列による結果を返します。 フォーマットが指定された場合は、出力結果にそのテンプレートを適用します。

フォーマットの詳細は、Go 言語の text/template パッケージにおいて説明されています。

メモ

これはクラスター管理コマンドです。 Swarm のマネージャーノード上で実行する必要があります。 マネージャーノードとワーカーノードについては、本ドキュメントの Swarm モード を参照してください。

本コマンドの利用例については、以下に示す 利用例の節 を参照してください。

オプション

名前/省略形 デフォルト 説明
--format , -f Go 言語テンプレートを使って出力をフォーマットします。
--pretty 読みやすい書式で内容を出力します。

利用例

サービス名または ID 指定によるサービス情報の表示

情報表示を行うサービスは、その 名前 または ID により指定します。

たとえば以下に示すようなサービスがあるとします。

$ docker service ls
ID            NAME   MODE        REPLICAS  IMAGE
dmu1ept4cxcf  redis  replicated  3/3       redis:3.0.6

docker service inspect redisdocker 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
    },
    ...
  }
]

フォーマット設定

inspect による出力にあたっては、デフォルトの JSON 出力ではなく、読みやすいフォーマットにより出力することができます。 これを行うには--prettyオプションを使います。

$ 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オプションを使って、サービスの特定情報を得ることができます。 たとえば以下のコマンドはredisサービスのレプリカ数を出力します。

$ docker service inspect --format='{{.Spec.Mode.Replicated.Replicas}}' redis

10

上位コマンド

コマンド 説明
docker service サービスを管理します。
コマンド 説明
docker service create 新たなサービスを生成します。
docker service inspect サービスの詳細情報を表示します。
docker service logs サービスまたはタスクのログを取得します。
docker service ls サービス一覧を表示します。
docker service ps 1 つまたは複数サービスのタスクを一覧表示します。
docker service rm 1 つまたは複数のサービスを削除します。
docker service rollback サービス設定に対しての変更を元に戻します。
docker service scale 1 つまたは複数のレプリカサービスをスケール変更します。
docker service update サービスを更新します。