Docker cheatsheet (comandos e macetes)
- Publicado em: 28/12/2020
- Atualizado em: 28/12/2023
Não li, nem lerei
Um breve resumo para pessoas cansadasEsse artigo tem o objetivo audacioso de ser melhor que a lista de macetes do GTA: San Andreas. Essa é pra mim e pra você, pessoa desenvolvedora vencida pelo cansaço ou com memória de peixe e sendo procurada pelo Nemo.
Comandos Docker
Apagar
Apagar um container
docker rm [name]
Apagar containers que já morreram
docker rm -v $(docker ps -a -q -f status=exited)
Apagar todos containers não sendo executado
docker container prune
Parar e apagar todos os containers forçadamente
docker container stop $(docker container ls –aq) && docker system prune –af ––volumes
Apagar todas as imagens untagged ( <none> )
docker rmi $(docker images | grep '^<none>' | awk '{print $3}')
- Forçando:
docker rmi -f $(docker images | grep '^<none>' | awk '{print $3}')
Apagar uma imagem específica
docker rmi [image name]
Apagar imagens soltas
docker rmi $(docker images -f dangling=true -q)
Apagar imagens baseando-se em tempo
- Remove todas as imagens criadas nas últimas 24h:
docker image prune –a ––filter "until=24h"
Apagar imagens rotuladas como “old” pelo Docker
docker image prune ––filter="label=old"
Apagar volumes esquecidos
docker run -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/docker:/var/lib/docker --rm martin/docker-cleanup-volumes
Atribuir
Atribuir variável de ambiente para container
docker run -e AUTHOR="Nome do autor" dockersamples/static-site
Baixar
Baixar uma imagem
docker pull [image name]
Construir
Construir uma imagem baseado em um Dockerfile
docker build .
Construir uma imagem baseado em um Dockerfile com um nome especificado
docker build -t lab_image .
Criar
Criar um container baseado numa imagem
docker run [image name]
Criar um container baseado numa image
docker run [image name]
Criar um container sem travar o terminal (detached)
docker run -d [image name]
Criar um container e entrar no modo interativo, permitindo executar comandos dentro dele
docker run -it [image name] sh
(shell)docker run -it [image name] bash
(bash)- Para sair, executar
exit
- Para sair, executar
Criar um container e expor porta para acesso ao serviço
- Permitir que um usuário na rede acesse nossa aplicação (rodando na porta 5000) utilizando o IP + porta 80:
docker run -p 80:5000 [image name]
- Criando portas aleatórias:
docker run -P [image name]
Criar container nomeando-o
docker run -- name [nome] [Image name]
Executar
Executar um comando dentro de um container em execução
docker exec [container id] [command]
Exibir
Exibir informações da versão instalada do Docker
- Para uma resposta simplificada:
docker -v
- Para uma resposta detalhada:
docker version
Exibir a quantidade de memória sendo utilizada pelo container
docker stats [ID do container]
Exibir o IP de um container
docker run -it [image name] sh
e em seguidahostname -i
Exibir informações de um container:
docker inspect [ID do container]
Exibir logs de um container em modo interativo:
docker logs --follow [ID do container]
Iniciar
Iniciar container utilizando ID
docker start [container id]
Listar
Listar todas as imagens:
docker images -a
Listar containers em execução:
docker ps
ou “docker container ls`
Listar todos os containers:
docker ps -a
oudocker container ls -a
Listar somente IDs dos containers
docker ps -q
Listar portas do container:
docker port [container id]
Parar
Parar uma instância
docker stop [container id] ou docker stop [container name]
- Com zero segundos de delay:
docker stop -t 0 [container id]