Os comandos são uma parte da utilização da tecnologia, é preciso estudar também os arquivos, etc.
cria uma nova imagem docker a partir de um Dockerfile presente no diretório atual
"file"
cria uma nova imagem docker a partir de um Dockerfile presente no caminho especificado após a opção
"tag"
define uma tag para a imagem docker que será criada
"sem cache"
desativa o uso de cache durante o build da imagem
normalmente, para cada instrução no Dockerfile, o docker tenta reutilizar camadas já construídas, neste caso isso é desativado
isso deixa o processo mais lento, mas é útil ao depurar problemas
docker build -t <container> . --no-cache
gerencia aplicações multi-container definidas em um arquivo docker-compose.yml
inicia os serviços definidos no arquivo docker-compose.yml
"detached"
inicia os serviços em background
pára e remove os containers, redes e volumes criados pelo compose
constrói ou reconstrói as imagens dos serviços
mostra os logs dos serviços
lista os containers dos serviços em execução
"file"
especifica um arquivo compose diferente do padrão (docker-compose.yml)
gerencia containers já existentes
a maioria dos comandos tem efeitos iguais a outros comandos mais curtos
mostra detalhes do container
mostra logs do container
"list"
lista os containers ativos
"list all"
lista todos os containers, inclusive os que estiverem parados
"poda"
remove todos os containers parados, após uma pergunta de confirmação
"poda forçada"
remove todos os containers parados sem perguntar por confirmação
"remove"
remove um container
inicia um container parado
pára um container em execução
copia arquivos entre o host e o container
docker cp <container>:/caminho/no/container /caminho/no/host
docker cp /caminho/no/host <container>:/caminho/no/container
"execute"
executa comandos dentro de containers em execução
"interactive"
mantém a entrada padrão (STDIN) aberta
"tty"
cria um terminal virtual
estas duas flags são quase sempre usadas juntas, e ao final do comando especifica-se um terminal (por exemplo, bash)
na prática, o comando "faz o terminal entrar no container"
docker exec -it <container> /bin/bash
"detached"
executa o comando em background
gerencia imagens docker
"list"
lista as imagens disponíveis localmente
"remove"
remove uma imagem docker
faz download de uma imagem docker do docker hub, ou outro registry configurado
exibe os logs de um container
"follow"
segue os logs em tempo real, atualizando conforme novos logs são gerados
docker logs -f exemplo.api
"process status"
inspirado no comando ps em linux/unix
exibe os containers ativos
"all"
exibe todos os containers, inclusive os que estiverem parados
"quiet"
exibe "silenciosamente" apenas os IDs dos containers ativos, sem uma tabela com outros dados
sendo assim, é útil em scripts ou comandos encadeados
"empurra" uma imagem local para o docker hub ou outro registry remoto configurado
requer que a imagem esteja corretamente etiquetada ("tagueada") e que o usuário esteja autenticado no registry
docker push <container>
reinicia um container
docker restart <container>
cria e inicia um novo container a partir de uma imagem
é capaz de, inclusive, baixar a imagem se ainda não estiver presente
pode ser seguido de opção, imagem e comando
"detached"
roda em background
"environment"
define variáveis de ambiente
"interactive"
abre um terminal interativo
dá um nome personalizado ao container
"ports"
faz mapeamento de portas entre o host e o container
"remove"
remove o container automaticamente, após ele parar
"volumes"
faz mapeamento de volumes no container
inicia um container que esteja parado
"attach"
anexa o terminal do container ao atual, mostrando sua saída padrão
caso seja usado sozinho, não aceita entrada, por isso é comumente usado junto com docker start -i
"interactive"
direciona a entrada padrão ao terminal do container
caso seja usado sozinho, não exibirá saída, por isso é comumente usado junto com docker start -a
pára containers em execução
"time"
define quantos segundos esperar, antes de forçar o encerramento (o padrão é 10)
gerencia o estado geral do docker no sistema
"disk free"
mostra o uso de disco por imagens, containers, volumes e caches
exibe eventos do Docker em tempo real (logs do daemon)
mostra informações gerais do sistema Docker (versão, número de containers, drivers, etc.)
"poda" tudo que não está sendo usado (containers, imagens, redes, volumes)