O Docker é uma plataforma que ajuda os desenvolvedores a criar e implantar aplicativos em contêineres. Ele ajuda a resolver os desafios de compatibilidade do sistema operacional, fornecendo ambientes virtualizados leves para gerenciar esses aplicativos.
A principal interface de linha de comando (CLI) do Docker oferece ferramentas avançadas para os desenvolvedores que trabalham com contêineres. Começando com o comando básico docker
, a CLI suporta cerca de 60 subcomandos, a maioria dos quais aceita vários argumentos de linha de comando para lidar com diferentes tarefas.
Como você pode usar a CLI do Docker
Seu ambiente do Docker pode ser o Docker Engine de código aberto ou a interface GUI amigável do Docker Desktop. A CLI será sua interface principal em um ambiente do Docker Engine, mas você também terá acesso à ferramenta de linha de comando se instalar o Docker Desktop.
Acreditamos que até os usuários do Docker Desktop se encontrarão utilizando a CLI assim que se familiarizarem com pelo menos estes 20 comandos essenciais do docker
Comandos do Docker que você deve conhecer
Vamos descobrir com quais comandos do Docker você deve estar mais familiarizado.
1. docker system
O comando docker system
ajuda a inspecionar e gerenciar o ambiente do Docker. Ele oferece suporte a argumentos de linha de comando para executar tarefas específicas relacionadas ao gerenciamento, incluindo:
df
mostra como você está usando o discoprune
remove redes, contêineres, imagens ou volumes não utilizadosinfo
mostra informações relacionadas ao sistemaevents
exibe um registro de eventos do sistema em tempo real
Abaixo você vê o prompt inicial após a execução de docker system prune
.
2. docker context
Esse comando ajuda você a navegar e configurar diferentes contextos. No Docker, os contextos incluem nomes, informações de segurança da camada de transporte, configurações de ponto de extremidade e orquestradores.
Alguns dos argumentos de docker context
:
ls
exibe os detalhes do contexto padrãoinspect [CONTEXT}
inspeciona um contexto especificocreate [CONTEXT]
cria um novo contextouse [CONTEXT]
alterna entre contextos
Veja abaixo um exemplo de saída do site docker context ls
:
3. docker pause e unpause
O comando docker pause
congela os processos ativos de um contêiner. Para executá-lo, você deve especificar o nome do contêiner, conforme mostrado abaixo:
docker pause [CONTAINER]
Abaixo está um exemplo da saída que você pode esperar após pausar um contêiner.
O comando docker unpause
retoma os processos de contêineres pausados. Como no comando anterior, você deve especificar o nome do contêiner, conforme mostrado abaixo:
docker unpause [CONTAINER]
Abaixo está um exemplo da saída que você pode esperar depois de cancelar a pausa de um contêiner.
4. docker rm
Esse comando remove contêineres, volumes e redes. Ele permite que você selecione o componente a ser removido com base em seus atributos. Por exemplo, você pode forçar a remoção de contêineres em execução ou de todos os contêineres especificados:
docker rm [CONTAINER]
remove o contêiner cujo nome indicado. A saída desse comando está na captura de tela abaixo.
5. docker rmi
Você usa esse comando para remover imagens. Você pode remover uma única imagem ou várias imagens de uma vez. Você pode descrever a imagem a ser removida usando a ID curta ou a ID longa. O comando é importante para manter o node do host limpo e eficiente.
O comando para remoção de imagens usa esta estrutura:
docker rmi [IMAGE ID]
Abaixo está um exemplo da saída deste comando.
6. docker volume
Esse comando permite que você gerencie volumes no Docker. Você pode usá-lo para criar, remover, listar e inspecionar volumes.
Alguns dos argumentos do docker volume
são:
create [OPTIONAL NAME]
cria um novo volume. Você pode especificar o nome do volume ou deixar o Docker gerar um nome aleatório.ls
lista os volumes disponíveisinspect [NAME]
mostra informações detalhadas sobre o volume.rm [NAME]
remove um volume do Docker.
Abaixo está um exemplo da saída após a criação de um volume.
7. docker search
Use esse comando para pesquisar imagens do Docker Hub, que você pode executar como contêineres em seu computador. Ele permite que você acesse as imagens de registro do Docker Hub sem visitar o site.
O comando segue esta estrutura: docker search
. Você pode especificar os nomes das imagens que está procurando ou criar um filtro.
Abaixo está um exemplo da saída da seguinte consulta:
docker search --filter is-official=true --filter stars=500 mysql
8. docker push
O comando docker push
permite que você compartilhe suas imagens no registro do Docker Hub ou em um repositório privado.
A estrutura do comando é a seguinte:
docker push [OPTIONS] NAME[:TAG]
[OPTIONS]
permite que você defina -disable-content-trust
.
Por padrão, este valor é verdadeiro, e não é obrigatório incluí-lo.
NAME[:TAG]
exige o uso do nome do registro, do repositório e da tag da imagem.
Abaixo está um exemplo da saída do comando docker push
.
9. docker pull
Esse comando baixa uma imagem do Docker de um repositório em um registro público ou privado.
O comando funciona da seguinte forma:
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
Esse comando permite que você use imagens existentes em vez de criar novas imagens sempre que precisar criar um aplicativo em contêiner.
O exemplo abaixo mostra a saída de um comando docker pull
:
10. docker ps
Por padrão, este comando exibe a lista de todos os contêineres em execução. No entanto, você pode adicionar uma flag para listar contêineres com base em atributos como tamanho de uso do disco, contêineres vinculados e etiquetas.
O comando segue a estrutura abaixo:
docker ps [OPTIONS]
Alguns de seus argumentos incluem:
-a
exibe uma lista de contêineres em execução e finalizados-s
exibe o tamanho em disco e o tamanho virtual de cada contêiner
Você pode usar os dois juntos desta forma:
docker ps -as
Abaixo você encontra um exemplo da saída de um comando docker ps
.
11. docker tag
Use essa tag para adicionar metadados, como a versão, à sua imagem. Normalmente, as tags são criadas quando uma imagem é criada, mas o comando docker tag
permite que você adicione uma tag posteriormente, essencialmente criando um alias para a imagem de destino.
Esse comando segue a seguinte estrutura:
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
No exemplo abaixo, listamos imagens com o nome “redis” Depois de marcar a imagem com um número de versão (“2.0”), o novo alias e a imagem originalmente marcada aparecem na lista.
12. docker rename
Use esse comando para renomear um contêiner. Isso é útil quando você tem vários contêineres e deseja diferenciá-los com base em sua finalidade.
Esse comando segue a seguinte estrutura:
docker rename [OLD_NAME] [NEW_NAME]
Abaixo está um exemplo de saída antes e depois de um comando docker rename
.
13. docker commit
Esse comando permite que você crie novas imagens após as alterações nos arquivos de um contêiner. Isso é importante porque permite que você depure um contêiner usando um shell interativo.
Esse comando segue a seguinte estrutura:
docker commit [CONTAINER_ID] [name-of-new-image]
Abaixo está um exemplo e uma saída do comando docker commit
command.
14. docker network
Esse é um comando de gerenciamento de rede que permite que você crie aplicativos avançados conectando serviços e contêineres.
O comando tem a seguinte estrutura:
docker network [OPTIONS]
Seus argumentos incluem:
connect
para conectar contêineres a redescreate
para criar novas redesdisconnect
para desconectar contêineres em execução das redesrm
para remover redes únicas ou múltiplas
Abaixo você encontra a saída de um comando docker network create
.
15. docker history
Esse comando fornece o histórico de uma imagem específica, ajudando você a entender como ela foi criada e exibindo o tamanho da imagem.
O comando tem a seguinte estrutura:
docker history [IMAGE]
Abaixo, vemos o histórico associado à imagem redis:latest
.
16. docker update
Esse comando permite que você atualize a configuração de um contêiner. Ele ajuda a evitar que os contêineres consumam muitos recursos do host do Docker. O formato do comando é:
docker update [OPTIONS] [CONTAINER]
Algumas de suas opções incluem:
--restart
atualiza a política de reinicialização de um contêiner--memory
define o limite de memória de um contêiner--cpus
define o número de CPUs alocados
Veja abaixo um exemplo de saída de um comando docker update
.
17. docker plugin install
Esse comando permite que você gerencie plugins. Ele é essencial porque permite que você adicione novas funcionalidades sem alterar as configurações do host do Docker.
Os argumentos de docker plugin
incluem:
create
para criar novos pluginsenable
para ativar os plugins instaladosinstall
para instalar novos pluginsrm
para remover um ou vários pluginsls
para exibir uma lista de plugins
Abaixo, usamos docker plugin install
para adicionar um plugin ao nosso ambiente. Em seguida, usamos docker plugin ls
para revelar seu status.
18. docker container
Esse comando permite que você gerencie contêineres. Você o utiliza para executar ações como criar, eliminar e remover contêineres, entre outras.
As opções do site docker container
incluem:
create
para criar um contêinercommit
para criar uma nova imagem após alterações em um contêinerexec
para executar comandos dentro de um contêiner em execuçãokill
para parar um contêiner em execuçãols
para exibir uma lista de contêineres em um host do Dockerrestart
para reiniciar um contêinerrun
para criar um contêiner a partir de uma imagem e executá-lorm
para remover um contêiner de um host do Docker
Veja abaixo um exemplo de saída de um comando docker container
.
19. docker logs
Esse comando recupera os registros de um contêiner. Ele fornece informações sobre as operações de um contêiner, o que pode ser essencial para a depuração.
Veja abaixo um exemplo de saída de um comando docker logs
.
20. docker swarm
Esse comando ajuda a gerenciar um docker swarm, um grupo de máquinas (virtuais ou físicas) que executam o Docker e estão configuradas para trabalhar juntas em um cluster. Esse comando facilita a configuração de um swarm e o aproveitamento de seus benefícios.
Abaixo estão algumas das opções do docker swarm
:
init
para iniciar um swarmjoin
para participar de um swarmleave
para sair de um swarmupdate
para atualizar um swarm
Abaixo você encontra um exemplo e uma saída de um comando docker swarm init
.
Resumo
O Docker é uma ferramenta eficaz para criar e gerenciar aplicativos em contêineres. Os comandos fáceis de entender de sua CLI facilitam a criação e a manipulação até mesmo de aplicativos complexos.
Se você dominar os 20 comandos acima, poderá acelerar o desenvolvimento de seus aplicativos em contêineres.
Na Kinsta, muitos clientes da Hospedagem Gerenciada de WordPress usam nossas ferramentas DevKinsta baseadas em Docker-Desktop para desenvolver e implantar seus sites.
Os clientes do serviço de Hospedagem de Aplicativos da Kinsta podem trabalhar com o Docker e seu provedor Git favorito (Bitbucket, GitHub ou GitLab) para controle de versão de código-fonte e implantação rápida de aplicativos em contêineres.
Deixe um comentário