(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

ストレージ容量を圧迫しているdocker不要ファイルを削除する

スポンサーリンク

事象

GoogleCloudPlatformにて利用しているマシンにて容量が逼迫しつつある

root@instance-1:~# df
...
/dev/sda1       10253588 8052492   1660528  83% /
...

原因

du -h --max-depth=1 PATHにて調査する。

rootディレクトリ直下

# du -h --max-depth=1 /
...
2.6G    /var
...
7.7G    /

varディレクトリ直下

# du -h --max-depth=1 /var
...
2.2G    /var/lib
2.6G    /var

以下手順を繰り返すと以下ディレクトリ配下にあるoverlay2ファイルシステム関連ファイルが原因と判明。

/var/lib/docker/overlay2/

要は、overlayfsにて利用しているイメージファイル。

参考

解決策

以下コマンドにて、停止コンテナ,未使用ボリューム,未使用ネットワーク,未使用イメージが削除できます。

# docker system prune
WARNING! This will remove:
  - all stopped containers
  - all networks not used by at least one container
  - all dangling images
  - all dangling build cache

ここで「y」を選ぶと該当ファイルが削除されます。

Are you sure you want to continue? [y/N] y

空き容量を確保できました。

# df
...
/dev/sda1       10253588 6262508   3450512  65% /
...

終わりに

# docker system --help
...
Commands:
  df          Show docker disk usage
  events      Get real time events from the server
  info        Display system-wide information
  prune       Remove unused data

docker systemにおけるpruneコマンドですが、自動的に不要ファイルを削除してくれるので同様の事象にお悩みの方は活用ください。