Comandos Docker
Os comandos que resolvem a maior parte do dia com contêineres, incluindo os de limpeza — que é o que todo mundo procura quando o disco enche.
30 itens em 5 seções
Contêineres
docker run -it --rm imagem sh- Sobe um contêiner temporário e abre um shell; --rm apaga ao sair
docker run -d -p 8080:80 --name web nginx- Sobe em segundo plano publicando a porta 80 do contêiner na 8080 do host
docker ps -a- Lista todos os contêineres, inclusive os parados
docker exec -it web sh- Abre um shell dentro de um contêiner que já está rodando
docker logs -f --tail 100 web- Acompanha os logs a partir das últimas 100 linhas
docker stop web && docker rm web- Para e remove o contêiner
Imagens
docker build -t app:1.0 .- Constrói a imagem a partir do Dockerfile do diretório atual
docker build --no-cache -t app:1.0 .- Reconstrói ignorando o cache das camadas
docker images- Lista as imagens locais com tamanho e data
docker rmi app:1.0- Remove uma imagem
docker history app:1.0- Mostra as camadas e quanto cada uma acrescentou de tamanho
docker pull node:22-alpine- Baixa uma imagem do registro
Compose
docker compose up -d- Sobe todos os serviços em segundo plano
docker compose up --build- Reconstrói as imagens antes de subir
docker compose logs -f servico- Acompanha o log de um serviço específico
docker compose exec servico sh- Abre um shell dentro de um serviço
docker compose down- Para e remove os contêineres e a rede
docker compose down -v- O mesmo, e ainda apaga os volumes — apaga os dados do banco junto
Inspecionar e depurar
docker inspect web- Toda a configuração do contêiner em JSON
docker stats- Uso de CPU, memória e rede em tempo real
docker port web- Mostra o mapeamento de portas em vigor
docker cp web:/app/log.txt .- Copia um arquivo de dentro do contêiner para o host
docker diff web- Arquivos alterados no contêiner em relação à imagem
docker network inspect bridge- Quem está conectado a uma rede e com quais endereços
Limpar espaço
docker system df- Quanto disco está sendo usado por imagens, contêineres, volumes e cache
docker system prune- Remove contêineres parados, redes sem uso e cache de build
docker system prune -a --volumes- Remove também imagens sem uso e volumes; confira antes, apaga dados
docker image prune -a- Remove todas as imagens que nenhum contêiner usa
docker volume ls -f dangling=true- Lista os volumes órfãos antes de apagar
docker builder prune- Limpa apenas o cache de build, que costuma ser o maior vilão
Perguntas frequentes
- Meu disco encheu de Docker. Por onde começo?
- Rode docker system df para ver a distribuição. Na maioria das vezes o cache de build é o maior item, e docker builder prune resolve sem apagar imagem nem volume.
- Qual a diferença entre docker compose down e down -v?
- O down remove contêineres e rede, preservando os volumes. Com -v os volumes também vão embora — e é assim que se perde o banco de dados de desenvolvimento sem querer.
- Por que meu contêiner sobe e morre na hora?
- Porque o processo principal terminou. Contêiner vive enquanto o comando do CMD estiver rodando; se ele executa e sai, o contêiner sai junto. Confira com docker logs o que aconteceu.