A utilização do disco Docker Mac OS X cresce constantemente

A utilização do disco Docker Mac OS X cresce constantemente

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-machinehost 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 -haumentando 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 -hedf -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( -aporque 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.

informação relacionada