🇺🇸 English version here
Docker para Desenvolvedores — Parte 2: Comandos Essenciais da CLI
Na Parte 1 desta série, instalamos o Docker no Debian e rodamos nosso primeiro container. Agora vamos conhecer os comandos que você vai usar no dia a dia para gerenciar containers: rodar, listar, entrar, parar, remover, acompanhar logs e monitorar recursos.
Rodando um container
O comando mais básico é o docker run, que cria e inicia um container a partir de uma imagem pronta:
$ docker run --rm -p 8080:80 httpd
Onde:
-
--rm: remove o container automaticamente assim que ele parar (útil para testes, evitando acumular containers parados); -
-p 8080:80: mapeia a porta 8080 do host(sua máquina) para a porta 80 do container.
Rodando esse comando, o terminal fica "preso" mostrando os logs do container em primeiro plano. Para liberar o terminal e rodar em segundo plano, use a flag -d (daemon):
$ docker run --rm -d -p 8080:80 httpd
Listando containers
Para ver os containers que estão em execução no momento:
$ docker ps
Para ver todos os containers, incluindo os que já pararam, use a flag -a:
$ docker ps -a
Isso é útil para identificar containers parados que talvez não tenham sido removidos (por não terem usado a flag --rm).
Entrando em um container
Para entrar interativamente em um container já em execução "abrindo um shell":
$ docker exec -it <nome ou ID do container> bash
Se a imagem for baseada em Alpine (como muitas imagens leves de produção), ela geralmente não tem
bashinstalado — useashno lugar:$ docker exec -it <nome ou ID do container> ash
- Agora veja que está dentro do container, pode verificar
cat /etc/os-releaseouenv.
Também é possÃvel executar um comando especÃfico sem precisar abrir uma sessão interativa — por exemplo, para conferir uma variável de ambiente:
$ docker exec -it <nome ou ID do container> env
- Desta forma você não precisará entrar no container.
Parando e removendo containers
Para parar um container em execução:
$ docker stop <nome ou ID do container>
Parar não remove o container — ele continua existindo (parado), até que você remova explicitamente ou tenha usado --rm na criação.
Para remover manualmente:
$ docker rm <nome ou ID do container>
Acompanhando logs
Containers normalmente escrevem seus logs em stdout/stderr, e o Docker captura isso automaticamente. Para visualizar (e acompanhar em tempo real, como um tail -f):
$ docker logs -f <nome ou ID do container>
Sem a flag -f, o comando apenas imprime os logs existentes até o momento, sem continuar acompanhando.
Monitorando recursos
Para ver, em tempo real, o consumo de CPU, memória, I/O de disco e rede de todos os containers em execução:
$ docker stats
Esse comando é útil para identificar rapidamente containers consumindo recursos excessivos, sem precisar recorrer a ferramentas externas de monitoramento.
Próximos passos
Com os comandos essenciais da CLI em mãos, já é possÃvel operar containers no dia a dia com confiança. Mas até aqui, os dados dentro dos containers são efêmeros — se o container for removido, os dados vão junto. Na Parte 3 desta série, vamos resolver isso com volumes, garantindo persistência de dados entre execuções.
Continua na Parte 3.
Top comments (0)