Como listar contêineres Docker em execução e parados

DockerBeginner
Pratique Agora

Introdução

Neste tutorial, exploraremos as técnicas essenciais para listar contêineres Docker em execução e parados. Compreender como gerenciar e monitorar eficazmente o seu ambiente Docker é crucial para o desenvolvimento e implantação eficientes de aplicações baseadas em contêineres.

Compreendendo Contêineres Docker

Docker é uma plataforma popular de contencionalização que permite aos desenvolvedores empacotar e implantar aplicações de forma consistente e repetível. Os contêineres são unidades leves, autônomas e autocontidas que encapsulam uma aplicação, suas dependências e seu ambiente de execução. Isso facilita o desenvolvimento, teste e implantação de aplicações em diferentes ambientes, desde o laptop de um desenvolvedor até servidores de produção.

O que são Contêineres Docker?

Contêineres Docker são uma forma de empacotar e distribuir aplicações. Eles fornecem um ambiente padronizado e isolado para executar aplicações, garantindo que a aplicação e suas dependências sejam agrupadas e possam ser facilmente implantadas em qualquer sistema que tenha o Docker instalado. Os contêineres são criados a partir de imagens Docker, que são como projetos ou modelos para o contêiner.

Benefícios dos Contêineres Docker

  • Consistência: Os contêineres garantem que a aplicação e suas dependências sejam empacotadas juntas, eliminando o problema de "funciona na minha máquina".
  • Portabilidade: Os contêineres podem ser facilmente movidos entre diferentes ambientes, do desenvolvimento à produção, sem a necessidade de mudanças complexas de configuração.
  • Escalabilidade: Os contêineres podem ser facilmente escalonados para cima ou para baixo, permitindo que você ajuste os recursos alocados à sua aplicação com base na demanda.
  • Eficiência: Os contêineres são leves e compartilham o sistema operacional do host, tornando-os mais eficientes do que máquinas virtuais tradicionais.

Arquitetura Docker

Docker utiliza uma arquitetura cliente-servidor, onde o cliente Docker se comunica com o daemon Docker (o servidor) para executar várias operações, como construir, executar e gerenciar contêineres. O daemon Docker roda na máquina host e é responsável por gerenciar os contêineres e seu ciclo de vida.

graph LD subgraph Arquitetura Docker client[Cliente Docker] -- API --> daemon[Daemon Docker] daemon -- Pulls Images --> registry[Registro Docker] daemon -- Manages --> container[Contêineres Docker] end

Imagens e Contêineres Docker

Imagens Docker são os projetos para criar contêineres. Elas contêm o código da aplicação, as dependências e a configuração necessária para executar a aplicação. Contêineres são as instâncias em execução de imagens Docker, e eles fornecem um ambiente isolado e consistente para executar a aplicação.

Listando Contêineres Docker em Execução

Depois de ter contêineres Docker em execução, poderá precisar listá-los e gerenciá-los. Para listar os contêineres Docker em execução, pode usar o comando docker ps.

Listando Contêineres em Execução

Para listar todos os contêineres Docker em execução, utilize o seguinte comando:

docker ps

Isto exibirá uma tabela com informações sobre os contêineres em execução, incluindo o ID do contêiner, a imagem usada para criar o contêiner, o comando em execução, a hora em que o contêiner foi criado, o estado e as portas.

Também pode adicionar opções adicionais ao comando docker ps para personalizar a saída. Por exemplo:

docker ps -a

Isto listará todos os contêineres, incluindo os que não estão atualmente em execução.

docker ps --format "{{.ID}}\t{{.Image}}\t{{.Status}}"

Isto exibirá o ID do contêiner, a imagem e o estado numa formatação tabular.

Filtrando Contêineres em Execução

Também pode filtrar a lista de contêineres em execução usando várias opções. Por exemplo:

docker ps -f "status=running"

Isto apenas listará os contêineres que estão atualmente em execução.

docker ps -f "name=mycontainer"

Isto apenas listará os contêineres com o nome "mycontainer".

docker ps --format "{{.ID}}\t{{.Image}}\t{{.Status}}" -f "status=running"

Isto listará o ID do contêiner, a imagem e o estado de todos os contêineres em execução numa formatação tabular.

Compreendendo como listar contêineres Docker em execução, pode facilmente gerenciar e monitorar os contêineres no seu ambiente Docker.

Listando Contêineres Docker Parados

Além de listar contêineres em execução, você também pode precisar listar contêineres parados ou encerrados. Isso pode ser útil para solução de problemas, limpeza de contêineres não utilizados ou reinicialização de contêineres parados.

Listando Contêineres Parados

Para listar todos os contêineres Docker parados, utilize o seguinte comando:

docker ps -a -f "status=exited"

Isto exibirá uma tabela com informações sobre os contêineres parados, incluindo o ID do contêiner, a imagem usada para criar o contêiner, o comando executado, a hora em que o contêiner foi criado, o estado e as portas.

Você também pode usar a opção --format para personalizar a saída:

docker ps -a -f "status=exited" --format "{{.ID}}\t{{.Image}}\t{{.Status}}"

Isto exibirá o ID do contêiner, a imagem e o estado numa formatação tabular.

Filtrando Contêineres Parados

Também pode filtrar a lista de contêineres parados usando várias opções. Por exemplo:

docker ps -a -f "status=exited" -f "name=mycontainer"

Isto apenas listará os contêineres parados com o nome "mycontainer".

docker ps -a -f "status=exited" --format "{{.ID}}\t{{.Image}}\t{{.Status}}" -f "name=mycontainer"

Isto listará o ID do contêiner, a imagem e o estado de todos os contêineres parados com o nome "mycontainer" numa formatação tabular.

Compreendendo como listar contêineres Docker parados, pode facilmente gerenciar e monitorar os contêineres no seu ambiente Docker, mesmo aqueles que não estão atualmente em execução.

Resumo

Ao final deste guia, você terá um conhecimento sólido de como listar contêineres Docker em execução e parados, permitindo-lhe gerenciar e solucionar problemas de suas aplicações baseadas em Docker com mais eficiência. Dominar essas habilidades ajudará a otimizar seu fluxo de trabalho Docker e manter uma visão clara do seu ecossistema de contêineres.