Hoje cedo instalei o Docker e segui alguns tutoriais. Ao executar um tutorial sobre como usar o Docker com um aplicativo Meteor barebones, recebi um erro de que não havia espaço em disco suficiente, mesmo que minha /home
partição tenha 17 GB livres.
Reiniciei meu computador e ele me informou que The volume "Filesystem root" has 0 bytes disk space remaining
. Nenhum dos meus navegadores queria lançar em um espaço tão sufocante.
Corri sudo apt-get remove docker-ce docker-ce-cli containerd.io
e isso recuperou 33,4 MB de espaço em disco no /
, o que significava que eu poderia iniciar um navegador e procurar dicas sobre como recuperar mais espaço. Depois de remover um kernel antigo, executar sudo apt autoremove --purge
e sudo apt-get clean
remover vários aplicativos de terceiros que não uso há algum tempo, consegui recuperar um total de pouco mais de 800 MB, então pelo menos tenho algum espaço para respirar .
No entanto, parece uma coincidência que a instalação do Docker e a criação de meia dúzia de imagens levaram minha /
partição de 19 GB a ficar saturada de repente. Parece também que ainda deve haver muito espaço que não foi liberado, obrigando-me a remover outros arquivos que antes não causavam incômodo.
Existe algo especial que o Docker faz para /
, e há algo que eu possa fazer para desfazê-lo e evitar que isso aconteça novamente?
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 3,8G 0 3,8G 0% /dev
tmpfs 783M 9,6M 773M 2% /run
/dev/nvme0n1p5 19G 17G 776M 96% /
tmpfs 3,9G 468K 3,9G 1% /dev/shm
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 3,9G 0 3,9G 0% /sys/fs/cgroup
...
/dev/nvme0n1p6 465M 80M 357M 19% /boot
/dev/nvme0n1p7 77G 57G 17G 78% /home
/dev/nvme0n1p1 496M 82M 415M 17% /boot/efi
tmpfs 783M 52K 783M 1% /run/user/1000
Acontece que:
/var/lib/docker/
Isso (junto com meus outros experimentos) rapidamente preencheu minha partição de 19 GB.
Para resolver o problema, segui o conselho aqui , para criar um link simbólico de
/var/lib/docker/
uma pasta nas planícies mais amplas da minha/home
partição. E minha/
partição me agradece por isso:Também usei
docker rmi $(docker images -a -q)
edocker image prune
para remover os arquivos enormes que criei durante os experimentos, que não eram mais necessários.