चीजों को संभालने का गलत तरीका :/proc
इसे संशोधित करने के लिए केवल-पढ़ने के लिए फाइल सिस्टम है आप डॉकर को विशेषाधिकार प्राप्त मोड में चला सकते हैं, कंटेनर शुरू होने के बाद आप इसे संशोधित कर सकते हैं।
यदि कंटेनर को विशेषाधिकार प्राप्त मोड में चला रहे हैं, तो आप इन आदेशों का उपयोग करके THP को अक्षम कर सकते हैं:
# echo never > /sys/kernel/mm/transparent_hugepage/enabled
# echo never > /sys/kernel/mm/transparent_hugepage/defrag
उचित तरीका :सुनिश्चित करें कि आप डॉकर के नए संस्करण चलाते हैं (यदि आवश्यक हो तो अपग्रेड करें)। run
उपकमांड में --sysctl विकल्प होता है:
$ docker run -ti --sysctl net.core.somaxconn=4096 --rm redis:alpine /bin/sh
[email protected]:/# sysctl net.core.somaxconn
net.core.somaxconn = 4096
...
दुर्भाग्य से :vm.overcommit_memory
वर्तमान में --sysctl
. के माध्यम से सेट होने की अनुमति नहीं है paramter वही THP (transparent_hugepage) पर लागू होता है, ऐसा इसलिए है क्योंकि वे नेमस्पेस्ड नहीं हैं। इस प्रकार इन चेतावनियों को लिनक्स होस्ट पर चल रहे कंटेनर में ठीक करने के लिए आप उन्हें सीधे होस्ट पर बदल सकते हैं। यहां संबंधित मुद्दे:
- #19
- #55
उचित तरीके . के लिए आपको विशेषाधिकार प्राप्त मोड की आवश्यकता नहीं है दृष्टिकोण।