Home | Back


การแก้ปัญหา swap limit capabilities ใน Docker

Saturday, 11 October 2014



ในการสั่ง Docker run นั้น จะมีพารามิเตอร์ -m เพื่อกำหนด limit ของ memory ให้กับ Container นั้น โดยปกติ Kernel จะต้องรองรับ cgroup swap limit ด้วย แต่โดยปกติแล้ว Kernel จะไม่ได้กำหนดให้รองรับไว้แต่แรกทำให้เมื่อรัน Container แบบ limit memory แล้ว จะได้รับคำเตือนว่า “WARNING: Your kernel does not support swap limit capabilities. Limitation discarded.” แต่เราสามารถแก้ไขได้ดังนี้ครับ

1. กำหนดให้ Kernel รองรับ cgroup swap limit

แก้ไขไฟล์ /etc/default/grub ดังนี้ครับ

File : /etc/default/grub

2. กำหนด config ของ grub ใหม่

จากนั้นให้ทำการปรับปรุง Grub ใหม่ดังนี้ครับ

จากนั้น reboot เครื่องใหม่ ระบบ Docker ก็จะรองรับการ limit memory แล้วครับ



Home | Back