Como usar o comando docker container top para visualizar processos de um container

DockerBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como usar o comando docker container top para inspecionar os processos em execução dentro de um container Docker. Você começará iniciando um container simples para ter um ambiente em execução.

Em seguida, você utilizará o comando docker container top para visualizar os processos ativos dentro do container. Por fim, você explorará como usar docker container top com várias opções do ps para personalizar a saída e obter informações mais detalhadas sobre os processos do container.

Iniciar um container simples

Nesta etapa, você aprenderá como iniciar um container Docker simples. Containers Docker são unidades leves, portáteis e autossuficientes que contêm tudo o que é necessário para executar uma aplicação.

Primeiro, vamos baixar a imagem hello-world do Docker Hub. Esta é uma imagem muito pequena que é frequentemente usada para testar se o Docker está funcionando corretamente.

docker pull hello-world

Você deve ver uma saída indicando que a imagem está sendo baixada e extraída.

Agora, vamos executar um container baseado na imagem hello-world.

docker run hello-world

Quando você executa este comando, o Docker criará um novo container a partir da imagem hello-world e executará o comando definido na imagem. A imagem hello-world foi projetada para simplesmente imprimir uma mensagem no console e, em seguida, sair.

Você deve ver uma saída semelhante a esta:

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To discover more examples and ideas, visit:
 https://docs.docker.com/get-started/

Esta saída confirma que o Docker está instalado e funcionando corretamente na sua VM LabEx. O comando docker run criou e iniciou um container, que então executou sua tarefa e saiu.

Usar docker container top para visualizar processos em execução

Nesta etapa, você aprenderá como usar o comando docker container top para visualizar os processos em execução dentro de um container Docker. Este comando é semelhante ao comando top em um sistema Linux, mas ele mostra os processos em execução especificamente dentro de um container.

Primeiro, precisamos de um container em execução. Vamos iniciar um container ubuntu simples e mantê-lo em execução em segundo plano. Usaremos a flag -d para executar o container em modo detached (desconectado) e o comando sleep infinity para manter o container ativo.

docker run -d ubuntu sleep infinity

Você verá uma longa sequência de caracteres impressa no console. Este é o ID do container.

Agora, vamos usar docker container top seguido pelo ID ou nome do container para ver os processos em execução dentro deste container. Você pode obter o ID do container executando docker ps.

docker ps

Copie o CONTAINER ID da saída. Em seguida, substitua <container_id> pelo ID real no seguinte comando:

docker container top <container_id>

Você deve ver uma saída semelhante a esta, mostrando o processo sleep infinity em execução dentro do container:

UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD
root                7345                7331                0                   14:55               ?                   00:00:00            sleep infinity

A saída mostra informações sobre os processos em execução dentro do container especificado, incluindo o User ID (UID), Process ID (PID), Parent Process ID (PPID), utilização da CPU (C), Start Time (STIME), terminal de controle (TTY), tempo cumulativo da CPU (TIME) e o comando sendo executado (CMD). Neste caso, o processo principal é sleep infinity.

Usar docker container top com opções de ps

Nesta etapa, você aprenderá como usar o comando docker container top com opções do ps para personalizar a saída e visualizar informações específicas de processos dentro de um container. O comando docker container top aceita opções padrão do ps, permitindo que você controle quais colunas são exibidas e em que formato.

Primeiro, certifique-se de ter um container em execução da etapa anterior. Você pode verificar isso executando docker ps.

docker ps

Copie o CONTAINER ID do container ubuntu em execução.

Agora, vamos usar docker container top com algumas opções do ps. Por exemplo, para exibir apenas o ID do processo (pid) e o comando (cmd), você pode usar a opção -o seguida pelas colunas desejadas. Substitua <container_id> pelo ID do seu container.

docker container top pid,cmd < container_id > -o

Você deve ver uma saída semelhante a esta, mostrando apenas as colunas PID e CMD:

PID                 CMD
7345                sleep infinity

Você pode usar várias opções do ps para obter informações diferentes. Por exemplo, para ver o uso da CPU (%cpu) e o uso da memória (%mem), você pode usar:

docker container top pid,%cpu,%mem,cmd < container_id > -o

A saída incluirá o uso da CPU e da memória para os processos no container:

PID                 %CPU                %MEM                CMD
7345                0.0                 0.0                 sleep infinity

Você pode consultar a documentação do comando ps para obter uma lista completa das opções disponíveis. Usar docker container top com opções do ps fornece uma maneira flexível de monitorar os processos em execução dentro de seus containers e solucionar problemas.

Resumo

Neste laboratório, você aprendeu os passos fundamentais para interagir com containers Docker. Você começou puxando (pulling) e executando a imagem simples hello-world, que serviu como um teste básico da sua instalação do Docker e demonstrou os comandos principais docker pull e docker run. Esta etapa inicial ilustrou como o Docker busca imagens e cria containers para executar tarefas predefinidas.

Em seguida, você foi apresentado ao comando docker container top. Embora o conteúdo completo não tenha sido fornecido, o título da etapa indica que você aprenderia a usar este comando para inspecionar os processos em execução dentro de um container, de forma semelhante ao comando top em um ambiente Linux padrão. A etapa final, "Usar docker container top com opções do ps", sugere uma exploração mais aprofundada das capacidades do docker container top, provavelmente demonstrando como personalizar a saída usando opções semelhantes às encontradas no comando ps.