#Docker
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.
docker help
docker image list
docker images
docker rmi <nome imagem/id>
docker build -t <NOME IMAGEM> .
- Ponto sendo o local onde a imagem é gerada.
docker run <nome imagem> # Se não existir localmente, o docker tentará baixar do dockerhub.
docker run -it --rm <nome/id imagem> /bin/bash
docker ps
docker ps -a
docker ps -qa
docker rm $(docker ps -qa) #Roda o comando RM para todos os containers listados no comando PS
docker rm <nome/id>
docker exec -i -t x bash
-i = Iterativo
-t = Usa TTY(Terminal)
docker run --name database -e MYSQL_ROOT_PASSWORD=test -p 3306:3306 -d mariadb
docker stats <CONTAINER ID>
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:
- https://medium.com/@jacob.swanson.n/making-docker-use-different-ip-ranges-on-ubuntu-27ba6cbb825d.
- https://binodmahto.medium.com/defining-custom-ip-range-for-docker-containers-d0255fc33886
- 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
}
]
}
- Reinicie o docker depois com o comando
sudo systemctl restart docker
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
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.