Mala manera de manejar las cosas :/proc
es un sistema de archivos de solo lectura para modificarlo, puede ejecutar Docker en modo privilegiado y modificarlo después de iniciar el contenedor.
Si ejecuta el contenedor en modo privilegiado, puede deshabilitar THP usando estos comandos:
# echo never > /sys/kernel/mm/transparent_hugepage/enabled
# echo never > /sys/kernel/mm/transparent_hugepage/defrag
Manera correcta :asegúrese de ejecutar versiones más recientes de Docker (actualice si es necesario). run
el subcomando tiene la opción --sysctl:
$ docker run -ti --sysctl net.core.somaxconn=4096 --rm redis:alpine /bin/sh
[email protected]:/# sysctl net.core.somaxconn
net.core.somaxconn = 4096
...
Desafortunadamente :vm.overcommit_memory
actualmente no se permite configurar a través de --sysctl
parámetro lo mismo se aplica a THP (transparent_hugepage), esto se debe a que no tienen espacios de nombres. Por lo tanto, para corregir estas advertencias en un contenedor que se ejecuta en un host Linux, puede cambiarlas directamente en el host. Aquí los problemas relacionados:
- #19
- #55
No necesita el modo privilegiado para la manera correcta acercamiento.