แก้ปัญหา docker stats ไม่แสดงผล memory usage

แก้ปัญหา docker stats ไม่แสดงผล memory usage

ตอนนี้ใช้งาน raspberry pi 4 สำหรับ run docker ซึ่งก็มีจำนวน container ทำงานอยู่พอสมควร เพราะคิดว่าซื้อมาแล้ว ต้องใช้งานให้มันคุ้มค่าซิ! แต่เมื่อ container เริ่มเยอะ เครื่องมันก็จะเริ่มช้า! เราก็เลยอยากรู้ว่า container ตัวไหนใช้งาน cpu หรือ memory เยอะผิดปกติ ซึ่งเราสามารถใช้คำสั่ง docker stats

docker stats ไม่แสดงผล memory usage

อย่างที่เห็นดังรูปข้างบน MEM USAGE / LIMIT และ MEM % จะไม่แสดงผล ก็เลยไปลองหาข้อมูลจนเจอวิธีแก้ปัญหาดังกล่าว เลยคิดว่านำมาแชร์ เพื่อจะเป็นประโยชน์

วิธีแก้ปัญหา

  1. ทำการ backup cmdline.txt ไว้ก่อนเลย เผื่อมีอะไรผิดพลาด จากนั้นเข้าไปแก้ไขไฟล์ cmdline.txt ได้เลย
sudo cp /boot/cmdline.txt /boot/cmdline.txt.old
sudo nano /boot/cmdline.txt

2. เมื่อเข้าไปในไฟล์ cmdline.txt เราจะเจอแบบข้างล่าง

console=serial0,115200 console=tty1 root=PARTUUID=eb9dd260-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

3. ทำการแก้ไข โดยเพิ่มคำสั่ง cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory ต่อท้าย rootwait

console=serial0,115200 console=tty1 root=PARTUUID=eb9dd260-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory

4. จากนั้นก็ sudo reboot แล้วลองเรียกใช้งาน docker stats อีกครั้ง! ตอนนี้เราจะเห็นว่า MEM USAGE / LIMIT และ MEM % แสดงผลครบแล้ว