我正在尝试更改net.core.somaxconn
docker 容器,以便能够为我的 Web 应用程序提供更大的请求队列。
在 OS 上,在 docker 之外,我首先成功地修改了属性:
$ cat /proc/sys/net/core/somaxconn
128
$ sudo sysctl -w net.core.somaxconn=1024
net.core.somaxconn = 1024
$ cat /proc/sys/net/core/somaxconn
1024
但后来我不知道如何将该更改传播到 docker。我试过了:
- 也在编辑
/etc/sysctl.conf
(希望 docker 在容器启动时读取该文件) - 重新启动容器
sudo docker stop
并sudo docker run
再次 - 通过以下方式重新启动整个 docker 服务
sudo service docker restart
但在容器内,cat /proc/sys/net/core/somaxconn
总是显示128
.
我正在运行 docker 1.2(所以默认情况下我不能修改/proc
容器内的属性)和 Elastic Beanstalk(所以没有--privileged
模式,这将允许我修改/proc
)。
如何将 sysctl 更改传播到 docker?