Introdução
O Docker revolucionou a maneira como implantamos e gerenciamos aplicações ao introduzir os containers — ambientes leves e portáteis que podem ser executados em qualquer sistema que possua o Docker instalado. Como desenvolvedor ou administrador de sistemas, dominar o gerenciamento de containers Docker é fundamental para a implantação e manutenção eficiente de aplicações. Neste desafio, você colocará suas habilidades à prova realizando uma série de tarefas que cobrem os aspectos essenciais do gerenciamento de containers através da interface de linha de comando (CLI) do Docker.
Ao longo deste desafio, você navegará por diversos cenários que refletem situações do mundo real encontradas ao trabalhar com Docker. Desde a inicialização de containers e inspeção de logs até a execução de comandos internos e, por fim, a limpeza de recursos, você ganhará experiência prática com todo o ciclo de vida das operações de containers Docker.
Vamos começar a dominar a arte do gerenciamento de containers!
Iniciar um Container
O primeiro passo em qualquer fluxo de trabalho Docker costuma ser a inicialização de um container. Nesta tarefa, você iniciará um container e aprenderá a acessar seus logs — uma habilidade crucial para a resolução de problemas e monitoramento do comportamento da aplicação.
Tarefas
Suas tarefas são:
- Iniciar um container chamado
my-container, baseado na imagemnginx. - Visualizar os logs do container
my-container.
Requisitos
- Use o comando
docker runpara iniciar o container. - Use o comando
docker logspara visualizar os logs do container. - Realize todas as operações no diretório
/home/labex/project.
Exemplo
Após completar este passo com sucesso, você deverá conseguir ver seu container em execução ao usar o comando docker ps. A saída deve ser semelhante a esta:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3a7d9f642a7f nginx "/docker-entrypoint.…" 12 seconds ago Up 11 seconds 80/tcp my-container
Esta saída confirma que seu container Nginx está ativo e rodando, pronto para servir conteúdo web.
Ótimo trabalho ao lançar seu primeiro container! Ser capaz de iniciar containers e acessar seus logs é a base para trabalhar com Docker. A seguir, veremos como parar um container em execução — outra habilidade essencial no gerenciamento de containers.
Parar um Container
Embora executar containers seja importante, saber como pará-los de forma adequada é igualmente crucial. Esta habilidade é particularmente útil quando você precisa realizar manutenções, atualizar configurações ou simplesmente liberar recursos do sistema.
Tarefas
Sua tarefa é:
- Parar o container chamado
my-container.
Requisitos
- Use o comando
docker stoppara parar o container. - Realize todas as operações no diretório
/home/labex/project.
Exemplo
Após parar o container com sucesso, você pode usar docker ps -a para visualizar todos os containers, incluindo os que estão parados. A saída deve ser semelhante a esta:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3a7d9f642a7f nginx "/docker-entrypoint.…" 2 minutes ago Exited (0) 10 seconds ago my-container
Observe como o status do my-container mudou para "Exited", indicando que ele foi interrompido com sucesso.
Excelente trabalho ao parar o container! Esta habilidade é fundamental para gerenciar o ciclo de vida dos containers de forma eficaz. Agora que você dominou o início e a interrupção de containers, vamos passar para um tópico mais avançado: executar comandos dentro de um container em execução.
Executar Comandos em um Container
Um dos recursos mais poderosos do Docker é a capacidade de executar comandos dentro de um container que já está em execução. Essa funcionalidade é inestimável para depuração, execução de tarefas de manutenção ou atualização de configurações sem a necessidade de parar o container.
Tarefas
Suas tarefas são:
- Iniciar um container chamado
my-shell-container, baseado na imagemubuntu. O container deve permanecer em execução em segundo plano. - Executar o comando
echo "Hello World"dentro do containermy-shell-container.
Requisitos
- Use o comando
docker runpara iniciar o container. - Garanta que o container permaneça ativo após a inicialização.
- Use o comando
docker execpara executar o comando dentro do container. - Realize todas as operações no diretório
/home/labex/project.
Dica
Containers baseados na imagem ubuntu serão encerrados imediatamente após a inicialização, a menos que um comando de longa duração seja especificado. Para manter o container ativo, considere rodar um comando como sleep infinity ao iniciar o container. Por exemplo:
docker your-command sleep infinity
Exemplo
Após iniciar o container, você pode usar o comando docker ps para confirmar que ele está rodando. A saída deve ser semelhante a esta:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1a2b3c4d5e6f ubuntu "<command>" 30 seconds ago Up 29 seconds my-shell-container
Ao executar o comando echo dentro do container, você deverá ver a seguinte saída:
Hello World
Isso demonstra que você executou com sucesso um comando dentro do container em execução.
Trabalho fantástico! Você aprendeu como interagir com um container ativo executando comandos internamente. Essa habilidade abre um mundo de possibilidades para o gerenciamento e manutenção de containers. No passo final, aprenderemos como fazer a limpeza removendo os containers que não são mais necessários.
Remover um Container
Ao trabalhar com Docker, você frequentemente criará containers para tarefas temporárias ou testes. É importante remover esses containers quando não forem mais necessários para liberar recursos do sistema e manter seu ambiente Docker organizado.
Tarefas
Sua tarefa é:
- Parar e remover o container chamado
my-shell-container.
Requisitos
- Use o comando
docker stoppara parar o container. - Use o comando
docker rmpara remover o container. - Realize todas as operações no diretório
/home/labex/project.
Exemplo
Após completar este passo, você pode usar docker ps -a para confirmar que o my-shell-container foi removido. Você não deve mais vê-lo na lista de containers:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Isso indica que você removeu o container do seu sistema com sucesso.
Parabéns por concluir o passo final! Você aprendeu como limpar seu ambiente Docker removendo containers desnecessários. Esta habilidade é crucial para manter um espaço de trabalho Docker eficiente e organizado.
Resumo
Neste desafio abrangente, você percorreu os aspectos essenciais do gerenciamento de containers Docker. Você demonstrou sua capacidade de iniciar containers, acessar seus logs, parar containers em execução, executar comandos internamente e, por fim, remover containers quando não são mais necessários.
Essas habilidades formam a base do uso eficaz do Docker e serão úteis em diversos cenários, desde o desenvolvimento e teste até implantações em produção. Você adquiriu experiência prática com a CLI do Docker, o que é inestimável para qualquer pessoa que trabalhe com aplicações conteinerizadas.
Ao continuar sua jornada com o Docker, lembre-se de que essas operações básicas são os blocos de construção para fluxos de trabalho mais complexos. Pratique essas habilidades regularmente e você se tornará cada vez mais proficiente no gerenciamento de containers, resultando em processos de desenvolvimento e implantação mais ágeis e eficientes.
Continue explorando as capacidades do Docker e não hesite em experimentar diferentes imagens e configurações de container. O mundo da conteinerização é vasto e cheio de possibilidades, e agora você está bem equipado para navegá-lo com confiança!



