41
29

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

肥大化してしまったdockerコンテナのログを消し去る方法

Posted at

結論

cat /dev/null > /var/lib/docker/containers/${container_id}/${container_id}-json.log

/dev/null を流し込む

状況

dockerコンテナを運用するときに、たとえばログをホストに受け渡すために標準出力を利用することがある。docker logsでログが見られるようになるので便利なのだが、このログ、デフォルトでは永遠に肥大化し続けるので、だんだんディスクを圧迫してしまう。

これをお掃除しようと思った時、このファイルはホスト側の/var/lib/docker/containers以下に有るのだが、それ以外にコンテナ側からも参照されているため、rmコマンドで上記のパスを削除しても開放されない。そこで手っ取り早く /dev/null を流し込むのが楽。

max-size

ちなみにv1.9現在、json-fileログドライバーにはmax-sizeオプションがあるので、これを設定できる環境ではしておくのが正しい対策では有る(https://docs.docker.com/engine/reference/logging/overview/)。

41
29
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
41
29

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?