Uma lista com alguns comandos do docker para referência.
docker run
Caso o container não exista ele tenta realizar o pull do Docker Hub.
Um parâmetro bastante utilizados com este comando é o -it
para obter um terminal. Exemplo:
docker run -it <id_imagem>
Dica: para sair de um container onde você está utilizando o shell sem matá-lo tecle ctrl + p + q
. Caso você precise retornar ao container, obtenha o id
do container utilizando o comando ps
e execute o commando a seguir:
docker attach <id_container>
docker start <id_container>
docker stop <id_container>
docker pause <id_container>
docker unpause <id_container>
docker ps
Saída
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Cada vez que executamos um container ele permanece na máquina (ocupando espaço). A seguir um exemplo onde executei o mesmo container 3x com o comando docker run hello-world
e depois listei todos os containers com o comando a seguir:
docker ps -a
Saída
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5b577b62205e hello-world "/hello" 6 seconds ago Exited (0) 5 seconds ago zealous_benz
bcc3e75c4f4c hello-world "/hello" 50 seconds ago Exited (0) 50 seconds ago keen_stallman
d369e8f611c9 hello-world "/hello" 19 minutes ago Exited (0) 19 minutes ago fervent_aryabhata
docker ps -f "status=exited"
docker images
Saída
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest 05a3bd381fc2 2 weeks ago 1.84kB
docker stats <id_container>
docker top <id_container>
Saída
PID USER TIME COMMAND
3328 root 0:00 /bin/bash
docker logs <id_container>
Saída
root@86f4f6d62606:/# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
root@86f4f6d62606:/# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
root@86f4f6d62606:/#
root@86f4f6d62606:/# ^C
root@86f4f6d62606:/# cat /etc/debian_version
stretch/sid
root@86f4f6d62606:/# cat /proc/version
Linux version 4.9.41-moby (root@11fbdc1f630f) (gcc version 6.2.1 20160822 (Alpine 6.2.1) ) #1 SMP Wed Sep 6 00:05:16 UTC 2017
root@86f4f6d62606:/# exit
root@86f4f6d62606:/# exit
Para remover um container é necessário antes dar um stop nele. Depois utilize o comando a seguir:
docker rm <id_container>
docker container prune
Para remover um container ainda em execução, utilize o parâmetro -f
para forçar a remoção.
docker inspect <id_container>
A saída é muito grande para colocar aqui.
docker build -t <nome_da_imagem>:<versao> .
O parâmetro -t
serve para informar o nome da imagem e a versão separados por dois pontos (:).
O ponto no fim do comando refere-se ao diretório atual, considerando que o arquivo Dockerfile está localizado no diretório onde se está executando o comando.
Executando o comando docker images
para listar as imagens temos:
REPOSITORY TAG IMAGE ID CREATED SIZE
primeira_imagem 1.0 988b637e573d 5 minutes ago 100MB