首页 > 解决方案 > docker 容器:更改网络内核设置,net.core.rmem_max

问题描述

我正在尝试net.core.rmem_max=26214400在容器上设置

我有这个 docker-compose

    develop:
      sysctls:
       - net.core.rmem_max=26214400
      image: centos6

但是当我这样做时

docker-compose up -d develop

我收到这个错误

ERROR: for develop_1  Cannot start service develop: OCI runtime create 
failed: container_linux.go:348: starting container process caused
 "process_linux.go:402: container init caused \"open
 /proc/sys/net/core/rmem_max: no such file or directory\"": unknown

ERROR: for develop  Cannot start service develop: OCI runtime create
 failed: container_linux.go:348: starting container process caused
 "process_linux.go:402: container init caused \"open
 /proc/sys/net/core/rmem_max: no such file or directory\"": unknown

标签: dockerlinux-kerneldocker-composedocker-containersysctl

解决方案


你使用的是什么 docker 镜像?并非主机上的所有命名空间内核参数都在容器中可用。您提到的很可能不是。

您可以通过运行快速检查哪些确实可用:

docker run --rm develop ls -l /proc/sys/net/core

我还建议检查相应的撰写文档。


推荐阅读