Dåligt sätt att hantera saker på :/proc
är ett skrivskyddat filsystem för att ändra det kan du köra Docker i privilegierat läge än du kan ändra det efter att behållaren startades.
Om du kör behållaren i privilegierat läge kan du inaktivera THP med dessa kommandon:
# echo never > /sys/kernel/mm/transparent_hugepage/enabled
# echo never > /sys/kernel/mm/transparent_hugepage/defrag
Riktigt sätt :Se till att du kör nyare versioner av Docker (uppgradera vid behov). run
underkommandot har alternativet --sysctl:
$ docker run -ti --sysctl net.core.somaxconn=4096 --rm redis:alpine /bin/sh
[email protected]:/# sysctl net.core.somaxconn
net.core.somaxconn = 4096
...
Tyvärr :vm.overcommit_memory
är för närvarande inte tillåtet att ställas in via --sysctl
paramter samma gäller THP (transparent_hugepage), detta beror på att de inte är namnavstånd. För att fixa dessa varningar i en behållare som körs på en Linux-värd kan du ändra dem direkt på värddatorn. Här är de relaterade problemen:
- #19
- #55
Du behöver inte privilegierat läge för rätt sätt tillvägagångssätt.