wiki:docker:guia_comandos_docker
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| wiki:docker:guia_comandos_docker [2026/01/21 22:24] – Wiki Administrator | wiki:docker:guia_comandos_docker [2026/01/22 10:14] (current) – Wiki Administrator | ||
|---|---|---|---|
| Line 3: | Line 3: | ||
| Este guia de referência rápida (Cheat Sheet) compila os comandos Docker mais utilizados, organizados por funcionalidade, | Este guia de referência rápida (Cheat Sheet) compila os comandos Docker mais utilizados, organizados por funcionalidade, | ||
| - | ===== 1. MONITORAMENTO E INFORMAÇÕES DO SISTEMA | + | ===== 1. GERENCIAMENTO DE RECURSOS BÁSICOS ===== |
| + | |||
| + | ==== 1.1. MONITORAMENTO E INFORMAÇÕES DO SISTEMA ==== | ||
| <code bash> | <code bash> | ||
| Line 33: | Line 35: | ||
| </ | </ | ||
| - | ===== 2. GERENCIAMENTO DE CONTAINERS | + | ==== 1.2. GERENCIAMENTO DE CONTAINERS ==== |
| <code bash> | <code bash> | ||
| Line 69: | Line 71: | ||
| </ | </ | ||
| - | ===== 3. GERENCIAMENTO DE IMAGENS | + | ==== 1.3. GERENCIAMENTO DE IMAGENS ==== |
| <code bash> | <code bash> | ||
| Line 104: | Line 106: | ||
| </ | </ | ||
| - | ===== 4. GERENCIAMENTO DE VOLUMES | + | ==== 1.4. GERENCIAMENTO DE VOLUMES ==== |
| <code bash> | <code bash> | ||
| Line 130: | Line 132: | ||
| </ | </ | ||
| - | ===== 5. GERENCIAMENTO DE NETWORKS | + | ==== 1.5. GERENCIAMENTO DE NETWORKS ==== |
| <code bash> | <code bash> | ||
| Line 153: | Line 155: | ||
| </ | </ | ||
| - | ===== 6. LIMPEZA E MANUTENÇÃO | + | ===== 2. LIMPEZA E REMOÇÃO EM LOTE (OTIMIZAÇÃO DE ESPAÇO) |
| + | |||
| + | ==== 2.1. LIMPEZA GERAL E MANUTENÇÃO | ||
| <code bash> | <code bash> | ||
| Line 174: | Line 178: | ||
| </ | </ | ||
| - | ===== 7. LOGS E DEBUG DE CONTAINERS ===== | + | ==== 2.2. REMOÇÃO EM MASSA (USANDO COMMAND SUBSTITUTION) |
| + | <note warning> | ||
| + | **AVISO DE SEGURANÇA**: | ||
| + | Sempre verifique o que será removido executando apenas a parte interna primeiro. | ||
| + | </ | ||
| + | |||
| + | === Containers === | ||
| <code bash> | <code bash> | ||
| - | # Visualização de Logs | + | # Remove TODOS os containers (ativos e parados) |
| - | docker logs < | + | docker |
| - | docker | + | |
| - | docker | + | |
| - | docker logs --since 10m < | + | |
| - | docker logs -t < | + | |
| - | # Logs com Docker Compose | + | # Remove containers parados (Status: Exited) |
| - | docker-compose logs -f # Segue os logs de todos os serviços definidos no docker-compose.yml | + | docker |
| - | docker-compose logs -f serviço1 serviço2 # Segue os logs de serviços específicos | + | |
| - | # Exportação de Logs | + | # Remove containers por filtro (ex: nome específico) |
| - | docker | + | docker |
| + | </code> | ||
| - | # Inspeção de Configuração | + | === Imagens === |
| - | # Filtra e exibe seções importantes da configuração do container | + | <code bash> |
| - | docker | + | # Remove TODAS as imagens |
| + | docker rmi -f $(docker images -aq) | ||
| + | |||
| + | # Remove imagens intermediárias/ | ||
| + | docker | ||
| + | |||
| + | # Remove imagens por filtro (ex: nome específico) | ||
| + | docker rmi $(docker images -q -f "reference=nome/ | ||
| </ | </ | ||
| - | ===== 8. DOCKER | + | === Redes (Networks) |
| + | <code bash> | ||
| + | # Remove TODAS as redes (exceto bridge, host, none - que são padrão do sistema) | ||
| + | docker network rm $(docker network ls -q) | ||
| + | |||
| + | # Remove redes por filtro (ex: redes não usadas por containers) | ||
| + | docker network rm $(docker network ls -q -f " | ||
| + | </ | ||
| + | |||
| + | === Volumes === | ||
| + | <code bash> | ||
| + | # Remove TODOS os volumes | ||
| + | docker volume rm $(docker volume ls -q) | ||
| + | </ | ||
| + | |||
| + | ==== 2.3. COMANDOS COM FILTROS ESPECÍFICOS ==== | ||
| + | |||
| + | <code bash> | ||
| + | # Remover por idade/ | ||
| + | # Containers criados há mais de 24h | ||
| + | docker rm $(docker ps -aq -f " | ||
| + | |||
| + | # Imagens criadas há mais de 30 dias | ||
| + | docker image prune -a --filter " | ||
| + | |||
| + | # Remove containers com status exited há mais de 1 semana | ||
| + | docker container prune --filter " | ||
| + | |||
| + | # Remove volumes não utilizados há mais de 30 dias | ||
| + | docker volume prune --filter " | ||
| + | |||
| + | # Remover por padrão de nome/tag | ||
| + | # Containers com nome começando com " | ||
| + | docker rm -f $(docker ps -aq --filter " | ||
| + | |||
| + | # Imagens com tag " | ||
| + | docker rmi $(docker images | grep " | ||
| + | docker rmi $(docker images | grep " | ||
| + | </ | ||
| + | |||
| + | ==== 2.4. SCRIPTS DE LIMPEZA ==== | ||
| + | |||
| + | === Script: limpeza_total.sh (Limpeza Completa em Etapas) === | ||
| + | <file bash limpeza.sh> | ||
| + | # | ||
| + | # Remove tudo de forma segura (pergunta confirmação) | ||
| + | |||
| + | echo "=== LIMPEZA COMPLETA | ||
| + | echo "1. Parando todos os containers..." | ||
| + | docker stop $(docker ps -q) 2>/ | ||
| + | |||
| + | echo "2. Removendo containers..." | ||
| + | docker rm -f $(docker ps -aq) 2>/ | ||
| + | |||
| + | echo "3. Removendo imagens..." | ||
| + | docker rmi -f $(docker images -aq) 2>/ | ||
| + | |||
| + | echo "4. Removendo volumes..." | ||
| + | docker volume rm $(docker volume ls -q) 2>/ | ||
| + | |||
| + | echo "5. Removendo redes..." | ||
| + | docker network rm $(docker network ls -q | grep -v " | ||
| + | |||
| + | echo "6. Limpando cache builder..." | ||
| + | docker builder prune -f | ||
| + | |||
| + | echo " | ||
| + | </ | ||
| + | |||
| + | === Script: limpeza_segura.sh (Remove Apenas Não Utilizados) === | ||
| + | <file bash limpeza.sh> | ||
| + | # | ||
| + | # Remove apenas recursos não utilizados | ||
| + | |||
| + | echo "=== LIMPEZA SEGURA ===" | ||
| + | docker system prune -a -f --volumes | ||
| + | </ | ||
| + | |||
| + | ===== 3. DICAS AVANÇADAS E DEBUG ===== | ||
| + | |||
| + | ==== 3.1. DOCKER COMPOSE (GERENCIAMENTO MULTI-CONTAINER) | ||
| <code bash> | <code bash> | ||
| Line 228: | Line 321: | ||
| # Rebuild Específico | # Rebuild Específico | ||
| docker-compose build < | docker-compose build < | ||
| + | |||
| + | # Comandos Úteis para Limpeza do Compose | ||
| + | # Remove TODOS os containers, redes e volumes definidos no compose | ||
| + | docker-compose down --rmi all --volumes | ||
| + | |||
| + | # Remove imagens órfãs do compose | ||
| + | docker-compose down --rmi orphan | ||
| + | |||
| + | # Remove tudo (incluindo volumes nomeados) | ||
| + | docker-compose down -v --remove-orphans | ||
| </ | </ | ||
| - | ===== 9. DOCKER BUILDX (Construção Multiplataforma) ===== | + | ==== 3.2. DOCKER BUILDX (CONSTRUÇÃO MULTIPLATAFORMA) ==== |
| <code bash> | <code bash> | ||
| Line 250: | Line 353: | ||
| </ | </ | ||
| - | ===== 10. SEGURANÇA E AUDITORIA | + | ==== 3.3. SEGURANÇA E AUDITORIA ==== |
| <code bash> | <code bash> | ||
| Line 267: | Line 370: | ||
| </ | </ | ||
| - | ===== 11. TAGS E METADADOS | + | ==== 3.4. TAGS E METADADOS ==== |
| <code bash> | <code bash> | ||
| Line 279: | Line 382: | ||
| </ | </ | ||
| - | ===== 12. COMANDOS ÚTEIS PARA SCRIPTS | + | ==== 3.5. COMANDOS ÚTEIS PARA SCRIPTS ==== |
| <code bash> | <code bash> | ||
| Line 303: | Line 406: | ||
| </ | </ | ||
| - | ===== 13. DEBUG E TROUBLESHOOTING DO HOST ===== | + | ==== 3.6. LOGS E DEBUG DE CONTAINERS |
| + | |||
| + | <code bash> | ||
| + | # Visualização de Logs | ||
| + | docker logs < | ||
| + | docker logs -f < | ||
| + | docker logs --tail 50 < | ||
| + | docker logs --since 10m < | ||
| + | docker logs -t < | ||
| + | |||
| + | # Logs com Docker Compose | ||
| + | docker-compose logs -f # Segue os logs de todos os serviços definidos no docker-compose.yml | ||
| + | docker-compose logs -f serviço1 serviço2 # Segue os logs de serviços específicos | ||
| + | |||
| + | # Exportação de Logs | ||
| + | docker logs < | ||
| + | |||
| + | # Inspeção de Configuração | ||
| + | # Filtra e exibe seções importantes da configuração do container (Config, Env, Mounts) | ||
| + | docker inspect < | ||
| + | </ | ||
| + | |||
| + | ==== 3.7. DEBUG E TROUBLESHOOTING DO HOST ==== | ||
| <code bash> | <code bash> | ||
| Line 332: | Line 457: | ||
| </ | </ | ||
| - | ===== ALIASES ÚTEIS (Adicionar ao ~/.bashrc) ===== | + | ==== 3.8. EMERGÊNCIA (QUANDO O DOCKER NÃO RESPONDE) ==== |
| - | + | ||
| - | <code bash> | + | |
| - | alias dps=' | + | |
| - | alias dls=' | + | |
| - | alias dim=' | + | |
| - | alias dvol=' | + | |
| - | alias dnet=' | + | |
| - | alias dlog=' | + | |
| - | alias dexec=' | + | |
| - | alias dstop=' | + | |
| - | alias dstart=' | + | |
| - | alias drm=' | + | |
| - | alias drmi=' | + | |
| - | alias dprune=' | + | |
| - | alias dstat=' | + | |
| - | alias dcup=' | + | |
| - | alias dcdown=' | + | |
| - | alias dclog=' | + | |
| - | </ | + | |
| - | + | ||
| - | ===== COMANDOS AVANÇADOS ===== | + | |
| - | + | ||
| - | <code bash> | + | |
| - | # Build com Cache Externo | + | |
| - | # Usa uma imagem remota como fonte de cache para builds (útil em pipelines CI/CD) | + | |
| - | docker build --cache-from tipo=registry, | + | |
| - | + | ||
| - | # Multi-stage Build Otimizado | + | |
| - | # Constrói a imagem até um estágio específico (ex: ' | + | |
| - | docker build --target desenvolvimento -t nome:dev . | + | |
| - | docker build --target produção -t nome:prod . | + | |
| - | + | ||
| - | # Healthcheck Customizado | + | |
| - | # Define um comando de verificação de saúde que o Docker usará para determinar o status do container | + | |
| - | docker run --health-cmd=" | + | |
| - | + | ||
| - | # Limitação de Recursos | + | |
| - | # Limita a memória e o uso de CPU disponíveis para o container | + | |
| - | docker run --memory=" | + | |
| - | + | ||
| - | # Mapeamento de Portas Avançado | + | |
| - | docker run -p 8080:80 -p 8443:443 < | + | |
| - | docker run -p 0.0.0.0: | + | |
| - | + | ||
| - | # Mounts Temporários (tmpfs) | + | |
| - | # Cria um sistema de arquivos temporário na memória do host para o container | + | |
| - | docker run --tmpfs / | + | |
| - | </ | + | |
| - | + | ||
| - | ===== EMERGÊNCIA (Quando o Docker Não Responde) ===== | + | |
| <code bash> | <code bash> | ||
| Line 404: | Line 479: | ||
| </ | </ | ||
| - | ===== FERRAMENTAS COMPLEMENTARES | + | ==== 3.9. FERRAMENTAS COMPLEMENTARES ==== |
| <code bash> | <code bash> | ||
| Line 424: | Line 499: | ||
| </ | </ | ||
| - | ===== REMOVER TODOS OS OBJETOS | + | ==== 3.10. DOCKER SWARM (OPCIONAL) ==== |
| - | <note warning> | ||
| - | **AVISO DE SEGURANÇA**: | ||
| - | Sempre verifique o que será removido executando apenas a parte interna primeiro. | ||
| - | </ | ||
| - | |||
| - | ==== Containers ==== | ||
| <code bash> | <code bash> | ||
| - | # Remove TODOS os containers (ativos e parados) | + | # Remover todos os serviços do Swarm |
| - | docker rm -f $(docker | + | docker |
| - | # Remove containers parados (Status: Exited) | + | # Remover todos os segredos |
| - | docker rm $(docker | + | docker |
| - | # Remove containers por filtro (ex: nome específico) | + | # Remover todas as configurações |
| - | docker rm $(docker | + | docker |
| </ | </ | ||
| - | ==== Imagens | + | ===== 4. DICAS IMPORTANTES E ALIASES |
| + | |||
| + | ==== 4.1. DICAS IMPORTANTES ==== | ||
| + | |||
| + | 1. **Use com cuidado**: Sempre verifique o que será removido antes: | ||
| <code bash> | <code bash> | ||
| - | # Remove TODAS as imagens | + | # Primeiro liste, depois remova |
| - | docker | + | docker |
| + | docker volume rm $(docker | ||
| + | </ | ||
| - | # Remove | + | 2. **Preserve volumes importantes**: |
| - | docker | + | <code bash> |
| + | # Remove | ||
| + | docker | ||
| + | </ | ||
| - | # Remove imagens | + | 3. **Use prune para limpeza inteligente**: |
| - | docker | + | <code bash> |
| + | # Remove containers parados há mais de 1 semana | ||
| + | docker container prune --filter " | ||
| + | |||
| + | # Remove imagens | ||
| + | docker | ||
| </ | </ | ||
| - | ==== Redes (Networks) ==== | + | 4. **Verifique o que será removido |
| <code bash> | <code bash> | ||
| - | # Remove TODAS as redes (exceto bridge, host, none - que são padrão do sistema) | + | # Containers |
| - | docker | + | docker |
| - | # Remove redes por filtro | + | # Imagens que seriam removidas |
| - | docker | + | docker |
| + | |||
| + | # Volumes não utilizados | ||
| + | docker | ||
| </ | </ | ||
| - | ==== Volumes | + | ==== 4.2. ALIASES AVANÇADOS (ADICIONAR AO ~/ |
| <code bash> | <code bash> | ||
| - | docker volume rm $(docker volume ls -q) | + | # Limpeza completa (pergunta confirmação) |
| + | alias docker-nuke=' | ||
| + | |||
| + | # Limpeza segura (apenas não utilizados) | ||
| + | alias docker-clean=' | ||
| + | |||
| + | # Listar tudo antes de remover | ||
| + | alias docker-ls-all=' | ||
| + | |||
| + | # Containers ativos em formato de tabela | ||
| + | alias dps=' | ||
| + | |||
| + | # Todos os containers em formato de tabela | ||
| + | alias dls=' | ||
| + | |||
| + | # Lista de imagens | ||
| + | alias dim=' | ||
| + | |||
| + | # Lista de volumes | ||
| + | alias dvol=' | ||
| + | |||
| + | # Lista de redes | ||
| + | alias dnet=' | ||
| + | |||
| + | # Seguir logs de um container | ||
| + | alias dlog=' | ||
| + | |||
| + | # Acesso interativo a um container | ||
| + | alias dexec=' | ||
| + | |||
| + | # Parar container | ||
| + | alias dstop=' | ||
| + | |||
| + | # Iniciar container | ||
| + | alias dstart=' | ||
| + | |||
| + | # Remover container | ||
| + | alias drm=' | ||
| + | |||
| + | # Remover imagem | ||
| + | alias drmi=' | ||
| + | |||
| + | # Limpeza completa forçada | ||
| + | alias dprune=' | ||
| + | |||
| + | # Monitoramento de recursos em tempo real | ||
| + | alias dstat=' | ||
| + | |||
| + | # Iniciar compose em background | ||
| + | alias dcup=' | ||
| + | |||
| + | # Parar e remover compose | ||
| + | alias dcdown=' | ||
| + | |||
| + | # Seguir logs do compose | ||
| + | alias dclog=' | ||
| </ | </ | ||
| - | ===== COMANDOS | + | ===== 5. COMANDOS |
| <code bash> | <code bash> | ||
| - | # Remover por idade/tempo | + | # Build com Cache Externo |
| - | # Containers criados há mais de 24h | + | # Usa uma imagem remota como fonte de cache para builds (útil em pipelines CI/CD) |
| - | docker | + | docker |
| - | # Imagens criadas há mais de 30 dias | + | # Multi-stage Build Otimizado |
| - | docker | + | # Constrói a imagem até um estágio específico (ex: ' |
| + | docker | ||
| + | docker build --target produção | ||
| - | # Remove containers com status exited há mais de 1 semana | + | # Healthcheck Customizado |
| - | docker | + | # Define um comando |
| + | docker | ||
| - | # Remove volumes não utilizados há mais de 30 dias | + | # Limitação |
| - | docker | + | # Limita a memória e o uso de CPU disponíveis para o container |
| + | docker | ||
| - | # Remover por padrão | + | # Mapeamento |
| - | # Containers com nome começando com " | + | docker run -p 8080:80 -p 8443:443 < |
| - | docker | + | docker |
| - | # Imagens com tag " | + | # Mounts Temporários |
| - | docker rmi $(docker images | grep " | + | # Cria um sistema de arquivos temporário na memória do host para o container |
| - | docker | + | docker |
| </ | </ | ||
| - | ===== SCRIPTS DE LIMPEZA ===== | + | ===== 6. SCRIPTS DE LIMPEZA |
| - | ==== Script | + | === Script |
| - | <file bash limpeza.sh> | + | <file bash limpeza_total.sh> |
| #!/bin/bash | #!/bin/bash | ||
| # Remove tudo de forma segura (pergunta confirmação) | # Remove tudo de forma segura (pergunta confirmação) | ||
| Line 523: | Line 669: | ||
| </ | </ | ||
| - | ==== Versão segura (remove apenas não utilizados) ==== | + | === Script de Limpeza Segura |
| - | <file bash limpeza.sh> | + | <file bash limpeza_segura.sh> |
| #!/bin/bash | #!/bin/bash | ||
| # Remove apenas recursos não utilizados | # Remove apenas recursos não utilizados | ||
| Line 532: | Line 678: | ||
| </ | </ | ||
| - | ===== DICAS IMPORTANTES ===== | + | ===== 7. COMANDOS DOCKER COMPOSE (ADICIONAIS) ===== |
| - | + | ||
| - | 1. **Use com cuidado**: Sempre verifique o que será removido antes: | + | |
| - | <code bash> | + | |
| - | # Primeiro liste, depois remova | + | |
| - | docker volume ls -q # Veja o que será removido | + | |
| - | docker volume rm $(docker volume ls -q) # Agora remova | + | |
| - | </ | + | |
| - | + | ||
| - | 2. **Preserve volumes importantes**: | + | |
| - | <code bash> | + | |
| - | # Remove todos EXCETO os volumes nomeados importantes | + | |
| - | docker volume rm $(docker volume ls -q | grep -v " | + | |
| - | </ | + | |
| - | + | ||
| - | 3. **Use prune para limpeza inteligente**: | + | |
| - | <code bash> | + | |
| - | # Remove containers parados há mais de 1 semana | + | |
| - | docker container prune --filter " | + | |
| - | + | ||
| - | # Remove imagens não usadas há mais de 1 mês | + | |
| - | docker image prune -a --filter " | + | |
| - | </ | + | |
| - | + | ||
| - | 4. **Verifique o que será removido (dry-run)**: | + | |
| - | <code bash> | + | |
| - | # Containers que seriam removidos | + | |
| - | docker ps -aq --filter " | + | |
| - | + | ||
| - | # Imagens que seriam removidas (dangling) | + | |
| - | docker images -q -f dangling=true | + | |
| - | + | ||
| - | # Volumes não utilizados (dry-run) | + | |
| - | docker volume ls -q -f dangling=true | + | |
| - | </ | + | |
| - | + | ||
| - | ===== COMANDOS DOCKER COMPOSE (Adicionais) ===== | + | |
| <code bash> | <code bash> | ||
| Line 581: | Line 691: | ||
| </ | </ | ||
| - | ===== ALIASES AVANÇADOS ===== | ||
| - | |||
| - | <code bash> | ||
| - | # Limpeza completa (pergunta confirmação) | ||
| - | alias docker-nuke=' | ||
| - | |||
| - | # Limpeza segura (apenas não utilizados) | ||
| - | alias docker-clean=' | ||
| - | |||
| - | # Listar tudo antes de remover | ||
| - | alias docker-ls-all=' | ||
| - | </ | ||
| - | |||
| - | ===== DOCKER SWARM (Opcional) ===== | ||
| - | |||
| - | <code bash> | ||
| - | # Remover todos os serviços do Swarm | ||
| - | docker service rm $(docker service ls -q) | ||
| - | |||
| - | # Remover todos os segredos | ||
| - | docker secret rm $(docker secret ls -q) | ||
| - | |||
| - | # Remover todas as configurações | ||
| - | docker config rm $(docker config ls -q) | ||
| - | </ | ||
wiki/docker/guia_comandos_docker.txt · Last modified: by Wiki Administrator
