Log Rotation di Docker Container

Kamis, 16 September 2021

Log Rotation di Docker Container. Oke ini hanyalah catatan pribadi mengenai log rotation di container. Beberapa waktu lalu ketika saya memeriksa server yang saya gunakan untuk menyimpan service yang saya pasang didalam docker, saya cukup kaget ketika usage disk saya bengkak padahal tidak ada service lain yang berjalan.


Hal tersebut ternyata disebabkan oleh log yang terus menumpuk dari service yang berjalan di container. Secara default memang service yang berjalan di docker tidak ada log rotation sehingga selama disk masih muat maka log akan terus ditulis dan ditumpuk di direktori /var/lib/docker/containers.

Nah, berikut cara menambahkan fungsi log rotation di docker container. Jika kalian menjalankan service langsung dari perintah docker, cukup tambahkan flag --log-opt. Langsung saja ke contoh perintahnya.

docker run --log-opt max-size=20m --log-opt max-file=5 nginx:latest

Perintah diatas akan mengatur jumlah maksimal log yang disimpan menjadi 5 file dengan maksimal ukuran per file adalah 20MB.

Bagaimana jika menggunakan docker compose? Kalian bisa definisikan driver logging nya dan max size nya. Contoh:

  version: "2.1"
services:
  wireguard:
    image: linuxserver/wireguard
    container_name: wireguard
    logging:
        driver: "json-file"
        options:
            max-file: "5"
            max-size: "20m"
Nah berikut contoh jika konfigurasinya berhasil.

Oke mungkin sekian tutorial kali ini, semoga bermanfaat. Jika ada yang ingin ditanyakan silahkan tinggalkan komentar.

  • https://docs.docker.com/config/containers/logging/configure/#configure-the-logging-driver-for-a-container

Artikel Terkait Docker