Dockerでyum install時に容量越えエラーが出た対応メモ。

Insufficient space in download directory というエラーが出てyum install出来ないのを対応したメモ。


環境

  • OS: Mac OS X 10.11.6
  • Docker: 1.12.1
  • docker-compose: 1.8.0

突然yum installでエラーが発生するようになる

追加のパッケージが必要になり yum install を実行したところエラーが発生した。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# yum install gcc

Error downloading packages:
libgomp-4.8.5-4.el7.x86_64: Insufficient space in download directory /var/cache/yum/x86_64/7/base/packages
* free 0
* needed 130 k
cpp-4.8.5-4.el7.x86_64: Insufficient space in download directory /var/cache/yum/x86_64/7/base/packages
* free 0
* needed 5.9 M
gcc-4.8.5-4.el7.x86_64: Insufficient space in download directory /var/cache/yum/x86_64/7/base/packages
* free 0
* needed 16 M
libmpc-1.0.1-3.el7.x86_64: Insufficient space in download directory /var/cache/yum/x86_64/7/base/packages
* free 0
* needed 51 k
mpfr-3.1.1-4.el7.x86_64: Insufficient space in download directory /var/cache/yum/x86_64/7/base/packages
* free 0

Insufficient space in download directory

ダウンロードディレクトリに十分なスペースが無いというようなエラーのようだ。
df で使用している容量を確認してみる。

1
2
3
4
5
6
7
8
# df -h
Filesystem Size Used Avail Use% Mounted on
none 60G 57G 0 100% /
tmpfs 1000M 0 1000M 0% /dev
tmpfs 1000M 0 1000M 0% /sys/fs/cgroup
/dev/vda2 60G 57G 0 100% /etc/hosts
shm 64M 0 64M 0% /dev/shm
osxfs 931G 308G 623G 34% /var/www/html

volumeしているMacは十分な容量があるのに / 以下は 100% になっている。
調べてみると、ホストからDockerが確保した領域をコンテナとイメージで食いつぶしている模様。
Dockerが確保した容量は、全てのコンテナで利用するようだ。

コンテナとイメージを削除して空き容量を確保する

利用していないコンテナとnoneイメージを削除する。

1
2
$ docker rm `docker ps -aq`
$ docker images | awk '/<none/{print $3}' | xargs docker rmi

容量を確認。

1
2
3
4
5
6
7
8
# df -h
Filesystem Size Used Avail Use% Mounted on
none 60G 55G 1.2G 99% /
tmpfs 1000M 0 1000M 0% /dev
tmpfs 1000M 0 1000M 0% /sys/fs/cgroup
/dev/vda2 60G 55G 1.2G 99% /etc/hosts
shm 64M 0 64M 0% /dev/shm
osxfs 931G 308G 623G 34% /var/www/html

1.2GBしか空かないので一旦全てのイメージを削除する。

1
$ docker images | awk '{print $3}' | xargs docker rmi

再度容量を確認。

1
2
3
4
5
6
7
8
# df -h
Filesystem Size Used Avail Use% Mounted on
none 60G 48G 9.0G 85% /
tmpfs 1000M 0 1000M 0% /dev
tmpfs 1000M 0 1000M 0% /sys/fs/cgroup
/dev/vda2 60G 48G 9.0G 85% /etc/hosts
shm 64M 0 64M 0% /dev/shm
osxfs 931G 308G 623G 34% /var/www/html

十分空き容量が確保できたので yum install を再度実行すると問題なく実行できた。

未解決事項

以下の項目が未調査。

  • Dockerが確保している60GBの値を設定する方法。
  • 全イメージを削除しても48GB利用している理由。

以上です。

© 2018 磁力式駆動 All Rights Reserved.
Theme by hiero