/ Docker

Comandos básicos do Docker

Vamos mostar uma lista de comandos básicos no Docker para gerênciar contêineres.

Termos

  • Contêiner: o que é construído pelo Docker. É uma aplicação encapsulada, construída com as bibliotecas e dependências necessárias, e que pode ser executada em qualquer lugar que o Docker esteja instalado.
  • Host: é a máquina que possui o Docker instalado e que executará os contêineres (no nosso caso, a máquina local).
  • Imagem: uma imagem é como uma versão congelada de um contêiner. As imagens são criadas através de um Dockerfile ou de um contêiner em execução.
  • Docker hub: é um local onde são armazenadas as imagens. Pode ter acesso público ou restrito

Principais comandos

Lista de principais comandos para aprendermos um pouco mais sobre a manipulação de contêineres

docker run

Cria um novo contêiner, o inicia e executa o comando especificado (quando nada é especificado, executa o comando padrão).

$ docker run hello-world

No comando anterior o terminal é direcionado para dentro do contêiner. Para iniciá-lo no modo avulso (detached) utilizaremos o parâmetro -d:

$ docker run -d hello-world

O terminal exibirá o id de criação do contêiner, algo como:

bdcaba00ed90289490331613191d1ec2010dbc94330b532b4da8f7714e417d8e

Quando um nome (parâmetro --name="nome") não é fornecido, o Docker criará um nome aleatório.

docker ps

Lista os contêineres disponíveis na máquina. Por padrão, somente aqueles que estão atualmente executando serão exibidos. Para listar todos, utilize o parâmetro -a:

$ docker ps -a

No nosso exemplo, você verá algo como:

CONTAINER_ID IMAGE COMMAND CREATED STATUS PORTS NAMES
14a72c95d77b hello-world "/hello" 1 minute ago Exited (0) 1 minutes ago unruffled_bartik

docker start

Inicia um contêiner por nome, ou por ID. Utilizando o exemplo anterior, vamos copiar o ID informado na coluna CONTAINER_ID para iniciá-lo novamente.

$ docker start 14a72c95d77b

docker stop

Encerra a execução de um contêiner. Mesma lógica do comando anterior.

$ docker stop 14a72c95d77b

docker restart

Reinicia a execução de um contêiner( stop e start). Mesma lógica do comando anterior.

$ docker restart 14a72c95d77b

docker rm

Remove um contêiner do host. Você pode utilizar docker ps -a para listar a relação de contêineres disponíveis, e removê-lo por nome ou id.

$ docker rm 14a72c95d77b

O comando docker rm somente remove containers que não estão em execução. Para remover um container em execução, use docker rm -f

docker rmi

Remove a imagem do host. No entanto, só é possível remover as imagens que não está sendo utilizadas por nenhum contêiner no host.

$ docker rmi hello-world

Para ver a lista de todas as imagens baixadas para o host utilize docker images

docker exec

Executa um comando dentro de um contêiner que está em execução.

  • Primeiro executaremos um contêiner criado a partir de uma imagem do Ubuntu, em modo detached.
$ docker run --name ubuntu_bash -d -it ubuntu
  • Agora executaremos o comando ls -la dentro do contêiner
$ docker exec ubuntu_bash ls -la
  • Para logar dentro do contêiner e executar comandos diretamente de lá (exit para sair):
$ docker exec -it ubuntu_bash bash

docker logs

Exibe no terminal os logs do contêiner (parâmetro -f pode ser utilizado para travar a tela exibindo os logs, Ctrl+C para sair):

$ docker logs ubuntu_bash

Para mais detalhes, consulte este post.

Ou a documentação oficial

Éverton Paiva

Éverton Paiva

Analista de Tecnologia da Informação da UFVJM. Lotado na Diretoria de Tecnologia da Informação - DTI. Desenvolvedor de sistemas, iniciante e entusiasta de tecnologias devops.

Read More