Команда Docker stats

Справочник команд Docker


docker statsКоманда используется для отображения использования ресурсов контейнерами Docker в реальном времени, включая CPU, память, сетевой ввод-вывод и блочный ввод-вывод.

docker statsАналогично команде в системах Linuxtopкоманда, но она специально предназначена для контейнеров Docker. С помощьюdocker stats, пользователи могут отслеживать использование ресурсов контейнерами, что помогает оптимизировать производительность и устранять проблемы.

Синтаксис

docker stats [OPTIONS] [CONTAINER...]

Описание OPTIONS:

  • --all , -a :Показать все контейнеры, включая незапущенные.

  • --format :Файл шаблона, задающий возвращаемое значение.

  • --no-stream :Отображает текущее состояние и сразу завершает работу, больше не обновляясь в реальном времени.

  • --no-trunc :Не обрезать вывод.

Отобразить использование ресурсов всех запущенных контейнеров:

docker stats

Отобразить использование ресурсов указанного контейнера:

docker stats my_container

Отобразить использование ресурсов всех контейнеров (включая незапущенные контейнеры):

docker stats --all

Отображать данные только один раз вместо постоянного обновления:

docker stats --no-stream

Вывод с использованием пользовательского формата:

docker stats --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}"

Пример

Вывести информацию обо всех запущенных контейнерах.

example@example:~$  docker stats
CONTAINER ID        NAME                                    CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
b95a83497c91        awesome_brattain                        0.28%               5.629MiB / 1.952GiB   0.28%               916B / 0B           147kB / 0B          9
67b2525d8ad1        foobar                                  0.00%               1.727MiB / 1.952GiB   0.09%               2.48kB / 0B         4.11MB / 0B         2
e5c383697914        test-1951.1.kay7x1lh1twk9c0oig50sd5tr   0.00%               196KiB / 1.952GiB     0.01%               71.2kB / 0B         770kB / 0B          1
4bda148efbc0        random.1.vnc8on831idyr42slu578u3cr      0.00%               1.672MiB / 1.952GiB   0.08%               110kB / 0B          578kB / 0B          2

Подробное описание вывода:

CONTAINER ID и NAME:Идентификатор и имя контейнера.

CPU % и MEM %:Процент использования CPU и памяти контейнером.

MEM USAGE / LIMIT:Общий объём памяти, используемой контейнером, а также общий объём памяти, который ему разрешено использовать.

NET I/O:Объём данных, которые контейнер отправляет и получает через свой сетевой интерфейс.

BLOCK I/O:Объём данных, которые контейнер считывает с блочных устройств на хосте и записывает на них.

PIDs:Количество процессов или потоков, созданных контейнером.

Отображение информации на основе ID или имени контейнера:

example@example:~$ docker stats awesome_brattain 67b2525d8ad1

CONTAINER ID        NAME                CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
b95a83497c91        awesome_brattain    0.28%               5.629MiB / 1.952GiB   0.28%               916B / 0B           147kB / 0B          9
67b2525d8ad1        foobar              0.00%               1.727MiB / 1.952GiB   0.09%               2.48kB / 0B         4.11MB / 0B         2

Вывод в формате JSON:

example@example:~$ docker stats nginx --no-stream --format "{{ json . }}"
  {"BlockIO":"0B / 13.3kB","CPUPerc":"0.03%","Container":"nginx","ID":"ed37317fbf42","MemPerc":"0.24%","MemUsage":"2.352MiB / 982.5MiB","Name":"nginx","NetIO":"539kB / 606kB","PIDs":"2"}

Вывод указанной информации:

example@example:~$ docker stats --all --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}" fervent_panini 5acfcb1b4fd1 drunk_visvesvaraya big_heisenberg
  {"BlockIO":"0B / 13.3kB","CPUPerc":"0.03%","Container":"nginx","ID":"ed37317fbf42","MemPerc":"0.24%","MemUsage":"2.352MiB / 982.5MiB","Name":"nginx","NetIO":"539kB / 606kB","PIDs":"2"}

CONTAINER                CPU %               MEM USAGE / LIMIT
fervent_panini           0.00%               56KiB / 15.57GiB
5acfcb1b4fd1             0.07%               32.86MiB / 15.57GiB
drunk_visvesvaraya       0.00%               0B / 0B
big_heisenberg           0.00%               0B / 0B

Типичные сценарии

  • Мониторинг в реальном времени: Просмотр использования ресурсов контейнера в реальном времени для мониторинга и оптимизации производительности.
  • Устранение неполадок: При возникновении проблем в контейнерах проверяйте использование ресурсов, чтобы помочь определить первопричину.
  • Управление ресурсами: Отслеживайте использование ресурсов контейнера, чтобы обеспечить разумное распределение ресурсов и избежать неэффективного использования ресурсов или узких мест.

docker statsЭта команда — мощный инструмент для мониторинга использования ресурсов контейнеров Docker в реальном времени. С помощью этой команды пользователи могут получить подробную информацию об использовании контейнером CPU, памяти, сетевого ввода-вывода и блочного ввода-вывода, что помогает оптимизировать производительность, устранять неполадки и управлять ресурсами.


Справочник команд Docker

Другие расширения