Skip to content

Instantly share code, notes, and snippets.

@AlessandraRomualdo
Last active July 26, 2023 19:16
Show Gist options
  • Save AlessandraRomualdo/d6c61550814d74ea9ff0541951590cf5 to your computer and use it in GitHub Desktop.
Save AlessandraRomualdo/d6c61550814d74ea9ff0541951590cf5 to your computer and use it in GitHub Desktop.
Docker Comandos

Docker comandos e instalação

Instalação do Docker no Linux

  • 1 Desinstale versões anteriones
sudo apt-get remove docker* containerd runc
  • 2 Instalar dependências iniciais
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release
  • 3 Adicionar a chave pública do repositórop Docker na máquina
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  • 4 Adicionar o repositório na lista do apt
echo \
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" \
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  • 5 Instalar o Docker
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
  • 6 Adicionar seu usuário ao grupo de usuários Docker
sudo groupadd docker

Caso ocorra uma mensagem: groupadd: grupo 'docker' já existe, é só prosseguir. Use o comando

sudo usermod -aG docker $USER

Para ativar as alterações realizadas nos grupos, você pode realizar logout e login de sua sessão ou executar o seguinte comando no terminal

newgrp docker
  • 7 Inicie o Daemon do Docker
sudo systemctl status docker

Caso o parâmetro Active esteja como stop/waiting ou no nosso caso, como inactive, rode o comando start para iniciá-lo:

sudo systemctl start docker

Habilitar o daemon do Docker para iniciar durante o boot:

sudo systemctl start docker

Comandos

⚠️ Os comandos feitos através do CLI são enviados para a API interna do Docker, que, por sua vez, envia os comandos para o Daemon.

Sintaxe para os comandos padrões no CLI

docker <comando> <subcomando> <parâmetros>

Comandos

⚠️ Comandos para parar e remover todos os containers e images. Muito cuidado ao usar!

  • docker stop $(docker ps -a -q): para parar todos os containers.
  • docker rm $(docker ps -a -q): para apagar todos os containers.
  • docker rmi $(docker images -a -q): para apagar todas as imagens.

Listagem

  • docker images: para listar todas a images Docker que já está na sua máquina.
  • docker ps ou docker container ls: para listar os containers em execução.
  • docker container ls -a ou docker ls -a: para listar os container em execução e os que estão parados.

Executar um novo container

docker container run <flags>? <imagem>:<tag> <argumentos>?
  • docker container run alpine:3.14 echo "Hello World": para executar um container usando a imagem Docker alpine e a tag 3.14

Dar um nome ao container

  • docker container run --name meu-container alpine:3.14 echo "Hello World 2": para dar um nome ao container.

Remover um container

  • docker rm <nome-do-container-ou-id> -f: para remover um container.
  • docker container run --rm alpine:3.14 echo "Helo World": para remover o conteiner assim que ele terminar de executar.

Segundo plano

  • docker container run -d alpine:3.14 sleep 300para executar em segundo plano.
  • docker stop -t 0 <nome-do-container-ou-id>: para parar um container em segundo plano.

Flags

  • -t: solicita a criação de um sessão de terminal.
  • -i: para a sessão ser interativa.

Logs de um container

  • docker logs <flags> <nome-do-container>: para ver as informações do container.
  • docker top meu-container: para ver as informações sobre os processos que estão sendo rodados dentro do container.

Limpar containers e images

  • docker container prune: remove todos os container inativos na maquina.
  • docker image prune: para remover todas as images.

Remover individualmente:

  • docker rm <id>: para remover um container ou image especifica.
  • `docker rm -f: para força a remoção do recurso.

Remover todos recursos

  • docker system prume: remove todos os container, networks e imagens não usadas
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment