Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在docker容器上应用内核调优_Docker_Linux Kernel - Fatal编程技术网

如何在docker容器上应用内核调优

如何在docker容器上应用内核调优,docker,linux-kernel,Docker,Linux Kernel,我正在CentOS 7.2操作系统(即Nginx、mysql和mongo)上构建3个不同的应用程序容器,使用docker engine v1.12。我想根据应用程序和它们各自的容器应用不同的内核设置 例如,我想在Mongo和mysql容器上将vm.zone\u receive\u mode设置为0,而在nginx容器上将vm.zone\u receive\u mode设置为1。我试图用docker--privileged命令启动映像,并修改了内核设置,但它改变了主机操作系统的设置,并将相同的设置

我正在CentOS 7.2操作系统(即Nginx、mysql和mongo)上构建3个不同的应用程序容器,使用docker engine v1.12。我想根据应用程序和它们各自的容器应用不同的内核设置

例如,我想在Mongo和mysql容器上将
vm.zone\u receive\u mode
设置为
0
,而在nginx容器上将
vm.zone\u receive\u mode
设置为
1
。我试图用docker
--privileged
命令启动映像,并修改了内核设置,但它改变了主机操作系统的设置,并将相同的设置应用于所有容器

我已经阅读了许多文档,了解了容器是使用主机内核运行的


我想知道有没有办法保持特定于容器的内核设置

很快-不,如果要同时运行容器,则不能这样做

为什么??这是本书第一页的引文

轻量化

在一台机器上运行的容器共享相同的操作系统内核;它们立即启动,使用更少的内存。映像由分层文件系统构建,共享公共文件,从而使磁盘使用和映像下载更加高效

Docker完全不同于拥有自己内核的VM


实际上,docker是由主机系统内核驱动的,因此一次运行的所有容器都共享相同的内核配置

很快-不,如果要同时运行容器,就不能这样做

为什么??这是本书第一页的引文

轻量化

在一台机器上运行的容器共享相同的操作系统内核;它们立即启动,使用更少的内存。映像由分层文件系统构建,共享公共文件,从而使磁盘使用和映像下载更加高效

Docker完全不同于拥有自己内核的VM


docker实际上是由主机系统内核驱动的,因此一次运行的所有容器共享相同的内核配置

感谢您提供的信息。如果我使用自定义构建操作系统启动容器,而不是从docker公共注册表中提取映像,则可以使用支持启动容器。docker容器允许我为特定容器保留单独的内核设置吗?@NishantH您可以在docker容器中存储任何您想要的内容。但是docker守护进程不会为您调整内核设置。尽管如此,您仍然可以编写一些容器启动包装,实现docker引擎插件等提供信息的工具。如果我使用自定义构建操作系统启动容器,而不是从docker公共注册表中提取映像,则可以使用支持启动容器。docker容器允许我为特定容器保留单独的内核设置吗?@NishantH您可以在docker容器中存储任何您想要的内容。但是docker守护进程不会为您调整内核设置。不过,您可以编写一些容器启动包装器,实现docker引擎插件等等