Conteúdo

Tutorial do docker stats: veja o uso de recursos em tempo real (--no-stream, --format)

docker stats mostra o uso de recursos dos contêineres em tempo real. Para ver processos e conhecer o fluxo de depuração, consulte Ver logs e depurar.

Sintaxe

docker stats [opções] [contêineres...]
docker top contêiner [opções do ps]

Opções

OpçãoDescrição
-a, --allMostra todos os contêineres (por padrão, mostra apenas os contêineres em execução)
--format modeloUsa um modelo personalizado para a saída; aceita table, table modelo, json ou um modelo Go
--no-streamInterrompe o fluxo e obtém apenas o primeiro resultado
--no-truncNão trunca a saída

A sintaxe de docker top aceita opções de ps; nos exemplos a seguir, -o especifica os campos dos processos a exibir.

Exemplos

Consultar tudo de uma vez ou especificar um único contêiner

$ docker stats --no-stream
CONTAINER ID   NAME       CPU %     MEM USAGE / LIMIT     MEM %     NET I/O           BLOCK I/O         PIDS
0c009f73010b   small      0.00%     716KiB / 64MiB        1.09%     628B / 126B       381kB / 0B        1
f3e514c09baa   busy       43.08%    1.289MiB / 1.919GiB   0.07%     796B / 126B       1.83MB / 0B       1
63b9a2f9c63f   web        0.00%     4.43MiB / 1.919GiB    0.23%     838B / 126B       8.95MB / 8.19kB   2
35357aad74b1   registry   2.01%     13.19MiB / 1.919GiB   0.67%     3.89MB / 19.6kB   135MB / 3.92MB    5

$ docker stats --no-stream web
CONTAINER ID   NAME      CPU %     MEM USAGE / LIMIT     MEM %     NET I/O       BLOCK I/O         PIDS
63b9a2f9c63f   web       0.00%     3.812MiB / 1.919GiB   0.19%     838B / 126B   8.95MB / 8.19kB   2
  • --no-stream obtém apenas o primeiro resultado e não continua atualizando a tela.
  • Sem especificar um contêiner, o comando lista vários contêineres em execução; depois de especificar web, lista apenas esse contêiner.
  • MEM USAGE / LIMIT mostra o uso e o limite; o limite de small é 64MiB, enquanto os outros contêineres do exemplo mostram 1.919GiB.
  • NET I/O e BLOCK I/O mostram, respectivamente, a rede e o I/O de bloco; PIDS é a quantidade de processos.

Usar um modelo de tabela ou gerar JSON

$ docker stats --no-stream --format 'table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}'
NAME       CPU %     MEM USAGE / LIMIT
small      0.00%     616KiB / 64MiB
busy       42.14%    936KiB / 1.919GiB
web        0.00%     3.723MiB / 1.919GiB
registry   0.31%     14.1MiB / 1.919GiB

$ docker stats --no-stream --format '{{json .}}' small
{"BlockIO":"381kB / 0B","CPUPerc":"0.00%","Container":"small","ID":"0c009f73010b","MemPerc":"0.79%","MemUsage":"516KiB / 64MiB","Name":"small","NetIO":"698B / 126B","PIDs":"1"}
  • O modelo table gera os títulos das colunas; aqui, ele seleciona apenas o nome, a porcentagem de CPU e o uso de memória.
  • {{json .}} gera as estatísticas do contêiner especificado em uma única linha JSON.
  • O uso varia a cada amostragem: tanto o resultado da tabela quanto o do JSON para small mostram o limite de 64MiB, mas o uso de memória é diferente.

Ver processos do contêiner e personalizar os campos

$ docker top web
PID                 USER                TIME                COMMAND
2315                root                0:00                nginx: master process nginx -g daemon off;
2351                101                 0:00                nginx: worker process

$ docker top web -o pid,user,comm
PID                 USER                COMMAND
2315                root                nginx
2351                101                 nginx
  • docker top lista os processos em execução no contêiner; por padrão, o resultado inclui PID, usuário, tempo e o comando completo.
  • Com os campos personalizados -o pid,user,comm, o resultado omite TIME e mostra COMMAND como um nome de processo mais curto.

Capítulos relacionados

Exercícios

Exercício: consulte o contêiner small uma vez e use uma tabela para listar o nome e o uso de memória.

Resposta
docker stats --no-stream --format 'table {{.Name}}\t{{.MemUsage}}' small

Perguntas frequentes

Como consultar apenas um contêiner com docker stats?

Basta especificar o nome do contêiner após o comando, por exemplo, docker stats --no-stream web. A saída incluirá apenas web.

O que significa MEM USAGE / LIMIT em docker stats?

Esse campo mostra o uso e o limite de memória. No exemplo, small mostra 716KiB / 64MiB, então você pode ver o limite de 64MiB diretamente no campo.

Como mostrar apenas PID, USER e COMMAND em docker top?

Use docker top web -o pid,user,comm para listar esses três campos na saída.

Atualizado 26 de outubro de 2026