13 poin oleh ironlung 2023-09-27 | Belum ada komentar. | Bagikan ke WhatsApp
  • Saat mengoperasikan layanan di server Linux yang menjalankan aplikasi yang dideploy dengan Docker, kadang muncul pesan kekurangan kapasitas disk
    • Meskipun data dan log yang dihasilkan serta disimpan oleh aplikasi sebenarnya tidak banyak, kapasitas storage seluruh sistem bisa menjadi penuh
    • Salah satu penyebab kekurangan kapasitas storage saat menggunakan Docker adalah 'log container Docker'
  • Driver logging Docker dan lokasi log
    • Driver logging: Docker menyertakan mekanisme logging yang membantu memperoleh informasi dari container dan layanan yang sedang berjalan; inilah yang disebut driver logging
    • Perintah docker logs: menampilkan informasi yang dicatat oleh container yang sedang berjalan
    • Perintah docker service logs: menampilkan informasi yang dicatat oleh semua container yang berpartisipasi dalam layanan
    • Docker menggunakan driver logging json-file, yang menangkap standard output (stdout) atau standard error (stderr) dari semua log container dan mencatatnya ke file dalam format JSON
    • Jika menjalankan container Docker dengan perintah docker run atau docker-compose up, maka file /var/lib/docker/containers/[Container-ID]/[Container-ID]-json.log akan dibuat dan log dicatat di sana
    • Driver logging json-file tidak melakukan rotasi log
      • File log yang disimpan dengan driver logging ini dapat memakai ruang disk yang cukup besar jika container menghasilkan output dalam jumlah banyak, sehingga ruang disk bisa habis
  • Mengurangi ukuran log container Docker
    • Jika menjalankan perintah docker rm atau docker-compose down, container Docker akan dihapus, dan direktori yang sesuai dengan [Container-ID] di bawah /var/lib/docker/containers juga ikut dihapus
      • Dengan begitu, file [Container-ID]-json.log yang memakan banyak ruang disk juga ikut terhapus sehingga ruang disk sistem bisa dipulihkan
    • Menjalankan perintah truncate -s 0 <json-log-file> dapat membuat ukuran file log menjadi 0
  • Mengatur rotasi log
    • Rotasi log dapat diaktifkan dengan menentukan ukuran maksimum file (max-size) dan jumlah maksimum file (max-file)
    • Ketika ukuran file mencapai nilai maksimum yang ditetapkan, file akan diganti dengan file baru, dan file lama akan dibuat sebagai ...-json.log.1, ...-json.log.2 hingga jumlah maksimum file
    • Jika terlampaui, file yang paling lama akan dihapus sehingga ukuran file log container Docker tidak terus membesar tanpa batas

Belum ada komentar.

Belum ada komentar.