docker service ps

Перечислите задачи одной или нескольких служб

Эта команда работает с оркестратором Swarm.

Использование

$ docker service ps [OPTIONS] SERVICE [SERVICE...]

Обратитесь к разделу параметров для обзора доступных OPTIONS для этой команды.

Описание

Список задач, которые выполняются как часть указанных служб.

Примечание

Это команда управления кластером, и её необходимо выполнять на узле менеджера swarm. Чтобы узнать о менеджерах и рабочих, обратитесь к Раздел режима Swarm в документации.

Примеры использования этой команды см. в разделе примеров далее.

Параметры

Имя, сокращенно

По умолчанию

Описание

--filter, -f

Фильтрация выходных данных на основе предоставленных условий

--format

Задачи красивой печати с использованием шаблона Go

--no-resolve

Не сопоставляйте идентификаторы с именами

--no-trunc

Не усекайте вывод

--quiet, -q

Отображать только идентификаторы задач

Примеры

Перечислите задачи, которые являются частью службы

Следующая команда показывает все задачи, которые являются частью службы redis:

$ docker service ps redis

ID             NAME      IMAGE        NODE      DESIRED STATE  CURRENT STATE          ERROR  PORTS
0qihejybwf1x   redis.1   redis:3.0.5  manager1  Running        Running 8 seconds
bk658fpbex0d   redis.2   redis:3.0.5  worker2   Running        Running 9 seconds
5ls5s5fldaqg   redis.3   redis:3.0.5  worker1   Running        Running 9 seconds
8ryt076polmc   redis.4   redis:3.0.5  worker1   Running        Running 9 seconds
1x0v8yomsncd   redis.5   redis:3.0.5  manager1  Running        Running 8 seconds
71v7je3el7rr   redis.6   redis:3.0.5  worker2   Running        Running 9 seconds
4l3zm9b7tfr7   redis.7   redis:3.0.5  worker2   Running        Running 9 seconds
9tfpyixiy2i7   redis.8   redis:3.0.5  worker1   Running        Running 9 seconds
3w1wu13yupln   redis.9   redis:3.0.5  manager1  Running        Running 8 seconds
8eaxrb2fqpbn   redis.10  redis:3.0.5  manager1  Running        Running 8 seconds

В дополнение к запущенным задачам вывод также показывает историю задач. Например, после обновления службы для использования образа redis:3.0.6 вывод может выглядеть следующим образом:

$ docker service ps redis

ID            NAME         IMAGE        NODE      DESIRED STATE  CURRENT STATE                   ERROR  PORTS
50qe8lfnxaxk  redis.1      redis:3.0.6  manager1  Running        Running 6 seconds ago
ky2re9oz86r9   \_ redis.1  redis:3.0.5  manager1  Shutdown       Shutdown 8 seconds ago
3s46te2nzl4i  redis.2      redis:3.0.6  worker2   Running        Running less than a second ago
nvjljf7rmor4   \_ redis.2  redis:3.0.6  worker2   Shutdown       Rejected 23 seconds ago        "No such image: redis@sha256:6…"
vtiuz2fpc0yb   \_ redis.2  redis:3.0.5  worker2   Shutdown       Shutdown 1 second ago
jnarweeha8x4  redis.3      redis:3.0.6  worker1   Running        Running 3 seconds ago
vs448yca2nz4   \_ redis.3  redis:3.0.5  worker1   Shutdown       Shutdown 4 seconds ago
jf1i992619ir  redis.4      redis:3.0.6  worker1   Running        Running 10 seconds ago
blkttv7zs8ee   \_ redis.4  redis:3.0.5  worker1   Shutdown       Shutdown 11 seconds ago

Количество элементов в истории задач определяется опцией --task-history- limit, которая была установлена при инициализации файла swarm. Вы можете изменяет лимит хранения истории задач с помощью команды обновление Docker swarm.

При развертывании службы Docker разрешает дайджест для образа службы и прикрепляет службу к этому дайджесту. Дайджест не отображается по умолчанию, но печатается, если используется --no-trunc. Параметр --no-trunc также показывает неусеченный идентификатор задачи и сообщения об ошибках, как показано далее;

$ docker service ps --no-trunc redis

ID                          NAME         IMAGE                                                                                NODE      DESIRED STATE  CURRENT STATE            ERROR                                                                                           PORTS
50qe8lfnxaxksi9w2a704wkp7   redis.1      redis:3.0.6@sha256:6a692a76c2081888b589e26e6ec835743119fe453d67ecf03df7de5b73d69842  manager1  Running        Running 5 minutes ago
ky2re9oz86r9556i2szb8a8af   \_ redis.1   redis:3.0.5@sha256:f8829e00d95672c48c60f468329d6693c4bdd28d1f057e755f8ba8b40008682e  worker2   Shutdown       Shutdown 5 minutes ago
bk658fpbex0d57cqcwoe3jthu   redis.2      redis:3.0.6@sha256:6a692a76c2081888b589e26e6ec835743119fe453d67ecf03df7de5b73d69842  worker2   Running        Running 5 seconds
nvjljf7rmor4htv7l8rwcx7i7   \_ redis.2   redis:3.0.6@sha256:6a692a76c2081888b589e26e6ec835743119fe453d67ecf03df7de5b73d69842  worker2   Shutdown       Rejected 5 minutes ago   "No such image: redis@sha256:6a692a76c2081888b589e26e6ec835743119fe453d67ecf03df7de5b73d69842"

Фильтрация

Формат флага фильтрации ( -f или --filter ) представляет собой пару key=value. Если есть более одного фильтра, передать несколько флагов (например, --filter "foo=bar" --filter "bif=baz"). Несколько флагов фильтра объединены в фильтр OR. Например, -f name=redis.1 -f name=redis.7 возвращает задачи redis.1 и redis.7.

В настоящее время поддерживаются следующие фильтры:

  • идентификатор

  • имя

  • node

  • desired-state

идентификатор

Фильтр id соответствует всем или префиксу идентификатора задачи.

$ docker service ps -f "id=8" redis

ID             NAME      IMAGE        NODE      DESIRED STATE  CURRENT STATE      ERROR  PORTS
8ryt076polmc   redis.4   redis:3.0.6  worker1   Running        Running 9 seconds
8eaxrb2fqpbn   redis.10  redis:3.0.6  manager1  Running        Running 8 seconds

имя

Фильтр name соответствует именам задач.

$ docker service ps -f "name=redis.1" redis

ID            NAME     IMAGE        NODE      DESIRED STATE  CURRENT STATE      ERROR  PORTS
qihejybwf1x5  redis.1  redis:3.0.6  manager1  Running        Running 8 seconds

node

Фильтр node соответствует имени узла или идентификатору узла.

$ docker service ps -f "node=manager1" redis

ID            NAME      IMAGE        NODE      DESIRED STATE  CURRENT STATE      ERROR  PORTS
0qihejybwf1x  redis.1   redis:3.0.6  manager1  Running        Running 8 seconds
1x0v8yomsncd  redis.5   redis:3.0.6  manager1  Running        Running 8 seconds
3w1wu13yupln  redis.9   redis:3.0.6  manager1  Running        Running 8 seconds
8eaxrb2fqpbn  redis.10  redis:3.0.6  manager1  Running        Running 8 seconds

desired-state

Фильтр desired-state может принимать значения running, shutdown или accepted.

Форматирование

Параметры форматирования ( --format ) красиво печатают выходные данные задач с использованием шаблона Go.

Допустимые заполнители для шаблона Go перечислены далее:

Заполнитель

Описание

.ID

Идентификатор задачи

.Name

Название задачи

.Image

Образ задачи

.Node

Идентификатор узла

.DesiredState

Желаемое состояние задачи ( running , shutdown или accepted )

.CurrentState

Текущее состояние задачи

.Error

Ошибка

.Ports

Опубликованные порты задач

При использовании параметра --format команда service ps либо выводит данные точно так, как декларирует шаблон, либо, при использовании директивы table, также включает заголовки столбцов.

В следующем примере используется шаблон без заголовков и выводятся записи Name и Image, разделенные двоеточием ( : ) для всех задач:

$ docker service ps --format "{{.Name}}: {{.Image}}" top

top.1: busybox
top.2: busybox
top.3: busybox

Родительская команда

Команда

Описание

docker service

Управление службами