Tabla de contenido
Olá de novo! Este artigo fala sobre como obter informações gerais sobre todo o sistema portuário e fazer “limpeza” de contentores, imagens e volumes de resíduos com docker system.
Docker system
O comando do docker system tem vários sub-mandos:
• docker system info
• docker system df
• docker system events
• docker system prune
Ver informação sobre um host de docker
Para ver a informação do hospedeiro a partir da docker, podemos executar o comando docker system info ou a sua abreviatura docker info desta forma:
[ger-pc ~]# docker info Client: Debug Mode: false Server: Containers: 1 Running: 1 Paused: 0 Stopped: 0 Images: 5 Server Version: 19.03.7-ce Storage Driver: overlay2 Backing Filesystem: <unknown> Supports d_type: true Native Overlay Diff: false Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge host ipvlan macvlan null overlay Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog Swarm: inactive Runtimes: runc Default Runtime: runc Init Binary: docker-init containerd version: d76c121f76a5fc8a462dc64594aea72fe18e1178.m runc version: dc9208a3303feef5b3839f4323d9beb36df0a9dd init version: fec3683 Security Options: apparmor seccomp Profile: default Kernel Version: 5.5.8-1-MANJARO Operating System: Manjaro Linux OSType: linux Architecture: x86_64 CPUs: 4 Total Memory: 7.233GiB Name: ger-pc ID: MWH3:24AM:UAZJ:E5UL:TRI3:F4NZ:Y3JD:IMKP:7G2V:VV6I:L5XF:J2TW Docker Root Dir: /var/lib/docker Debug Mode: false Registry: https://index.docker.io/v1/ Labels: Experimental: false Insecure Registries: 127.0.0.0/8 Live Restore Enabled: false
Desta forma, poderemos saber em que hardware, versão de docker, características do sistema, estamos a trabalhar.
Ver utilização de disco de cada contentor
Podemos ver a capacidade de disco utilizada por cada imagem, recipiente, volume e construir cache. O comando docker system df dar-nos-á um breve resumo em disco para cada componente da docker, como se vê no exemplo seguinte:
[ger-pc ~]# docker system df TYPE TOTAL ACTIVE SIZE RECLAIMABLE Images 6 1 1.006GB 803.4MB (79%) Containers 1 0 2B 2B (100%) Local Volumes 0 0 0B 0B Build Cache 0 0 0B 0B [ger-pc ~]#
Se também quiser saber quanto espaço em disco ocupa cada imagem ou cada contentor ou cada volume, tem de adicionar a opção -v ao comando, como pode ver no exemplo seguinte:
[ger-pc ~]# docker system df -v Images space usage: REPOSITORY TAG IMAGE ID CREATED SIZE SHARED SIZE UNIQUE SIZE CONTAINERS nginx alpine 89ec9da68213 3 days ago 19.94MB 0B 19.94MB 0 archlinux latest 9651b9e35f39 2 weeks ago 412.2MB 0B 412.2MB 0 ubuntu 18.04 4e5021d210f6 5 weeks ago 64.21MB 0B 64.21MB 0 centos 8 470671670cac 3 months ago 237.1MB 0B 237.1MB 0 ubuntu 19.04 c88ac1f841b7 3 months ago 69.99MB 0B 69.99MB 0 centos 7 5e35e350aded 5 months ago 203MB 0B 203MB 1 Containers space usage: CONTAINER ID IMAGE COMMAND LOCAL VOLUMES SIZE CREATED STATUS NAMES 6e034771f891 centos:7 "/bin/bash" 0 2B 25 hours ago Exited (137) 15 hours ago container1 Local Volumes space usage: VOLUME NAME LINKS SIZE Build cache usage: 0B CACHE ID CACHE TYPE SIZE CREATED LAST USED USAGE SHARED [ger-pc ~]#
Ver eventos em tempo real
O comando de eventos do docker system informa os eventos do docker em tempo real. Isto pode ajudar-nos quando o sistema tem uma falha e queremos evitar que ela se repita.
A sintaxe do comando é muito simples:
docker system events
Remoção de resíduos das docas
O Docker tem uma forma muito rápida de limpar o sistema.
O comando do docker system prune pode ajudar-nos muito a realizar a limpeza do sistema,
A sintaxe do comando é:
docker system prune
Um exemplo da produção é:
[ger-pc ~]# docker system prune WARNING! This will remove: - all stopped containers - all networks not used by at least one container - all dangling images - all dangling build cache Are you sure you want to continue? [y/N] y Deleted Containers: 6e034771f891225529dc6fc7eef6f40d537820d7607f68885edc10f2c71c6f9d Total reclaimed space: 2B [ger-pc ~]#
Como se pode ver, apenas removerá:
- Contentores parados
- Redes não utilizadas (sem contentores)
- Imagens penduradas
- Construir cache pendurado
Para não pedir confirmação adicionamos o parâmetro -f, pelo que deve ser docker system prune -f e todas as anteriores serão eliminadas de uma só vez, sem confirmação,
Se quisermos apagar todas as imagens, podemos executar o comando acrescentando -a e o comando terá este aspecto:
docker system prune -a
Para remover volumes também, adicionar o parâmetro –volumes como no exemplo seguinte:
docker system prune --volumes
Se estiver interessado em aprender Docker, pode adquirir o nosso livro aqui.
Docker para novatos
Se gostou do artigo, partilhe-o nas suas redes sociais para que possamos chegar a mais pessoas!
Com os melhores cumprimentos