Cara yang buruk untuk menangani berbagai hal :/proc adalah sistem file read-only untuk memodifikasinya, Anda dapat menjalankan Docker dalam mode istimewa daripada yang dapat Anda modifikasi setelah wadah dimulai.
Jika menjalankan wadah dalam mode istimewa, Anda dapat menonaktifkan THP menggunakan perintah ini:
# echo never > /sys/kernel/mm/transparent_hugepage/enabled
# echo never > /sys/kernel/mm/transparent_hugepage/defrag
Cara yang benar :Pastikan Anda menjalankan versi Docker yang lebih baru (upgrade jika diperlukan). run subcommand memiliki opsi --sysctl:
$ docker run -ti --sysctl net.core.somaxconn=4096 --rm redis:alpine /bin/sh
example@sqldat.com:/# sysctl net.core.somaxconn
net.core.somaxconn = 4096
...
Sayangnya :vm.overcommit_memory saat ini tidak diizinkan untuk disetel melalui --sysctl parameter yang sama berlaku untuk THP (transparent_hugepage), ini karena mereka tidak diberi namespace. Jadi untuk memperbaiki peringatan ini dalam wadah yang berjalan di Host Linux, Anda dapat mengubahnya langsung di Host. Berikut Masalah terkait:
- #19
- #55
Anda tidak memerlukan mode istimewa untuk cara yang benar pendekatan.