docker 如何使用sysctl为Hashicorp Nomad作业设置内核参数

ffx8fchx  于 2023-02-21  发布在  Docker
关注(0)|答案(1)|浏览(134)

文档中说我可以使用sysctl为docker任务设置内核参数,如下所示:

config {
  sysctl = {
    "net.core.somaxconn" = "16384"
  }
}

这确实有效。但当我尝试时,

sysctl = {
          "net.core.somaxconn" = "16384"
          "net.core.rmem_default" = 134217728
          "net.core.rmem_max" = 134217728
          "net.core.wmem_default" = 134217728
          "net.core.wmem_max" = 134217728
          "vm.max_map_count" = 1000000
        }

我收到以下错误。

Sep 28, '22 19:30:22 +0530  
Driver Failure  
Failed to start container fa2179c3fbfe0a216e457449cfb72a78e08c0be45f10ba9596004fbfc51e5cac: API error (400):
failed to create shim task: OCI runtime create failed: 
runc create failed: 
unable to start container process: 
error during container init: 
open /proc/sys/net/core/rmem_default: 
no such file or directory: unknown

我在文档中找不到使用此配置可以设置的参数。
我花了一整天的时间思考这个问题。
如果需要更多信息,请告诉我。
如果您好奇的话,我正尝试将Solanadevnetvalidator作为一个容器在Nomad中运行。

1tuwyuhd

1tuwyuhd1#

open /proc/sys/net/core/rmem_default: no such file or directory: unknown

当它在网络命名空间中运行时,在docker容器 * 中没有这样的sysctl参数。这与nomad无关。请参见https://github.com/moby/moby/issues/42282https://github.com/moby/moby/issues/30778等。

相关问题