Estou executando a versão mais recente do Docker (1.8.2) no Mac OS X 10.10.5 (Yosemite) com a mais recente docker-machine
(0.4.1). Tenho apenas dois contêineres Vanilla CentOS 6 em execução em um docker-machine
host padrão. Não há nenhuma configuração especial, os contêineres na verdade não estão executando nada... apenas bash shells.
Com o tempo, vejo a utilização do disco relatada df -h
aumentando para 100% nos contêineres e na máquina host (ou seja, o docker-machine
). Também posso ouvir o ventilador do meu Mac ligando e acelerando até desligar os contêineres.
Achei que talvez algum processo não autorizado estivesse fazendo com que o sistema de arquivos local crescesse dentro dos contêineres, mas du -hs /
relatou apenas algumas centenas de MB.
Sou relativamente novo no Docker e não consigo rastrear a origem desse problema. Alguma ideia do que poderia fazer com que a utilização do disco ficasse fora de controle assim?
Editar 1: adicione saídas de df -h
edf -i
Uso de disco de um contêiner
[root@99e23f7c4ae6 /]# df -h
Filesystem Size Used Avail Use% Mounted on
none 19G 18G 0 100% /
tmpfs 499M 0 499M 0% /dev
shm 64M 0 64M 0% /dev/shm
tmpfs 499M 0 499M 0% /sys/fs/cgroup
/dev/sda1 19G 18G 0 100% /etc/hosts
tmpfs 499M 0 499M 0% /proc/kcore
tmpfs 499M 0 499M 0% /proc/timer_stats
[root@99e23f7c4ae6 /]# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
none 1218224 28199 1190025 3% /
tmpfs 127518 17 127501 1% /dev
shm 127518 1 127517 1% /dev/shm
tmpfs 127518 11 127507 1% /sys/fs/cgroup
/dev/sda1 1218224 28199 1190025 3% /etc/hosts
tmpfs 127518 17 127501 1% /proc/kcore
tmpfs 127518 17 127501 1% /proc/timer_stats
[root@99e23f7c4ae6 /]# du -hs /
du: cannot access '/proc/348/task/348/fd/3': No such file or directory
du: cannot access '/proc/348/task/348/fdinfo/3': No such file or directory
du: cannot access '/proc/348/fd/4': No such file or directory
du: cannot access '/proc/348/fdinfo/4': No such file or directory
610M /
Uso de disco do host
docker@default:~$ df -h
Filesystem Size Used Available Use% Mounted on
tmpfs 896.6M 115.3M 781.3M 13% /
tmpfs 498.1M 72.0K 498.0M 0% /dev/shm
/dev/sda1 18.2G 18.2G 0 100% /mnt/sda1
cgroup 498.1M 0 498.1M 0% /sys/fs/cgroup
none 464.8G 224.6G 240.2G 48% /Users
/dev/sda1 18.2G 18.2G 0 100% /mnt/sda1/var/lib/docker/aufs
none 18.2G 18.2G 0 100% /mnt/sda1/var/lib/docker/aufs/mnt/99e23f7c4ae608b2354c9375a0e3a7513692b44297c24d143a6b92dd73dae611
df: /var/run/docker/netns/99e23f7c4ae6: Permission denied
docker@default:~$ df -i
Filesystem Inodes Used Available Use% Mounted on
tmpfs 124.5K 4.4K 120.2K 3% /
tmpfs 124.5K 3 124.5K 0% /dev/shm
/dev/sda1 1.2M 27.5K 1.1M 2% /mnt/sda1
cgroup 124.5K 11 124.5K 0% /sys/fs/cgroup
none 1000 0 1000 0% /Users
/dev/sda1 1.2M 27.5K 1.1M 2% /mnt/sda1/var/lib/docker/aufs
none 1.2M 27.5K 1.1M 2% /mnt/sda1/var/lib/docker/aufs/mnt/99e23f7c4ae608b2354c9375a0e3a7513692b44297c24d143a6b92dd73dae611
df: /var/run/docker/netns/99e23f7c4ae6: Permission denied
Responder1
Cada vez que você inicia um novo contêiner com docker run
, você basicamente se ramifica da imagem original a partir da qual começou, portanto, dependendo do que você fizer, poderá ter um monte de imagens muito semelhantes que ocupam espaço sem motivo. Você também deve lembrar que no Mac, o Docker é hospedado por uma VM baseada no VirtualBox, portanto, todas as imagens do Docker compartilham o espaço total em disco.
Acabei de começar com o Docker, então deve haver uma maneira melhor de lidar com esse problema, mas foi assim que resolvi abaixo. Talvez você não queira necessariamente remover todos os seus contêineres, mas isso lhe dará algumas dicas sobre o estado da sua janela de encaixe:
- Verifique seus contêineres inicializados:
docker ps -a
(-a
porque alguns deles não estão em execução) Pare todos os contêineres existentes:
docker stop `docker ps -a|cut -f 1 -d ' '|xargs`
Deletar tudocontêineres existentes:
docker rm `docker ps -a|cut -f 1 -d ' '|xargs`
Deletar tudo
<none>
imagens "sem nome" ( ). Tenho brincado de criar minhas próprias imagens e a maioria delas não foi utilizada:docker rmi `docker images|grep -i none|sed -e 's/ \{1,\}/ /g'| cut -d ' ' -f 3|xargs`
Depois disso, recuperei meu espaço.