Skip to content

Instantly share code, notes, and snippets.

@reinaldocoelho
Last active December 29, 2023 00:03
Show Gist options
  • Save reinaldocoelho/0e48b26eb3ba792150f99a98e40f2969 to your computer and use it in GitHub Desktop.
Save reinaldocoelho/0e48b26eb3ba792150f99a98e40f2969 to your computer and use it in GitHub Desktop.

#Docker

Conceitos

Imagem = O arquivo contendo a estrutura do container, porém não é a execução

Container = A instância da imagem rodando, ou seja o sistema.

Ajuda

Geral
docker help

Imagens

Listagem das imagens instaladas na maquina
docker image list
Listando as imagens
docker images
Removendo uma imagem
docker rmi <nome imagem/id>
Criando uma imagem a partir do dockerfile
docker build -t <NOME IMAGEM> .   

- Ponto sendo  o local onde a imagem é gerada.

Container

Rodando um container
docker run <nome imagem> # Se não existir localmente, o docker tentará baixar do dockerhub.
Rodando um container no bash e apagando ao sair
docker run -it --rm <nome/id imagem> /bin/bash
Listando containers em execução
docker ps
Listando todos os containers existentes
docker ps -a
Listando todos os ids de containers existentes
docker ps -qa
Removendo todos os containers
docker rm $(docker ps -qa) #Roda o comando RM para todos os containers listados no comando PS
Removendo um container
docker rm <nome/id>
Abre o docker em modo interativo(acessando o container shell) no bash
docker exec -i -t x bash

-i = Iterativo

-t = Usa TTY(Terminal)
Comando para subir MariaDB container acessivel localmente
docker run --name database -e MYSQL_ROOT_PASSWORD=test -p 3306:3306 -d mariadb
Analisando o consumo de um container
docker stats <CONTAINER ID>

Alterando range IPs do Docker

As vezes é necessário alterar o range de IPs do Docker em caso de conflitos com outras estruturas como VPN ou Roteador (problemas de rede/network/firewall em geral). Baseado nos documentos:

  1. Criar o arquivo /etc/docker/daemon.json, e dentro dele inserir:
{
  "bip": "187.10.0.5/24",
  "default-address-pools": [
    {
      "base": "187.11.0.0/16",
      "size": 24
    }
  ]
}
  1. Reinicie o docker depois com o comando sudo systemctl restart docker

Se Docker via SNAP

Se o Docker foi instalado com Snap, o arquivo deve estar numa das pastas abaixo: /var/snap/docker/current/etc/docker/daemon.json ou /var/snap/docker/current/config/daemon.json

e pode ser reiniciado com o comando sudo snap restart docker

Impondo limites (Limitando Memória, CPU e etc...)

Mais sobre: https://docs.docker.com/config/containers/resource_constraints/ https://stackoverflow.com/questions/42345235/how-to-specify-memory-cpu-limit-in-docker-compose-version-3

Nota Existe diferença nos limites para Docker Compose V2 e V3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment