Docker Mac OS X utilização de disco crescendo constantemente

3

Estou executando a versão mais recente do Docker (1.8.2) no Mac OS X 10.10.5 (Yosemite) com o mais recente docker-machine (0.4.1). Eu tenho apenas dois contêineres do CentOS 6 em execução no estoque docker-machine host. Não há configuração especial, os containers na verdade não estão executando nada… apenas os shells do bash.

Com o tempo, vejo a utilização de disco informada por df -h aumentando para 100% nos contêineres e na máquina host (ou seja, o docker-machine ). Também posso ouvir o ventilador no meu Mac chegando e acelerando até desligar os contêineres.

Pensei que talvez algum processo desonesto estivesse causando o crescimento do sistema de arquivos local dentro dos contêineres, mas du -hs / informava apenas algumas centenas de MB.

Sou relativamente novo no Docker e não consigo rastrear a origem desse problema. Alguma idéia do que poderia fazer com que a utilização do disco crescesse fora de controle assim?

Editar 1 : adicione saídas de df -h e df -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
    
por jckdnk111 16.09.2015 / 07:39

1 resposta

0

Toda vez que você inicia um novo contêiner com docker run , você basicamente se ramifica a partir dessa imagem original, então, dependendo do que você faz, você pode ter um monte de imagens muito similares que estão ocupando espaço sem motivo . Também é preciso lembrar que no Mac, o Docker é hospedado por uma VM baseada em VirtualBox, de modo que todas as imagens do Docker compartilham o espaço total em disco.

Eu comecei com o Docker, então deve haver uma maneira melhor de lidar com esse problema, mas é assim que resolvi isso abaixo. Você não pode necessariamente remover todos os seus contêineres, mas isso fornecerá algumas informações 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'

  • Remova todos os contêineres existentes: docker rm 'docker ps -a|cut -f 1 -d ' '|xargs'

  • Remover todas as imagens "sem nome" ( <none> ). Eu tenho brincado com a criação de minhas próprias imagens e a maioria delas não era usada: docker rmi 'docker images|grep -i none|sed -e 's/ \{1,\}/ /g'| cut -d ' ' -f 3|xargs'

Depois disso, consegui meu espaço de volta.

    
por 19.10.2015 / 21:55