在Docker中运行Lightttpd:ulimits没有兑现

时间:2017-03-11 13:48:10

标签: sockets docker lighttpd ulimit

我正在尝试在Docker容器内运行lighttpd(1.4.35)来提供高容量的静态网站(没有PHP等)。运行一分钟后,错误日志将填充:

  

(server.c.1444)[注意]禁用套接字,达到连接限制

我已在root中提升/etc/security/limits.conf的限制(并重新启动):

root            soft    nofile          4096
root            hard    nofile          32768

在我的docker-compose.yml(相当于命令行中的--ulimit):

ulimits:
  nofile:
    soft: 4096
    hard: 32768

在我的lighttpd.conf

server.max-fds = 8192
server.max-connections = 4096

但是当我运行lsof -n | grep -c lighttpd时,我得到的不高于128.如果我输入容器并运行ulimit -n,我会得到4096,正如预期的那样。运行ulimit -a会返回:

core file size          (blocks, -c) unlimited
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 128490
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 4096
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) unlimited
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

我还缺少什么?如何让lighttpd接受超过128个连接?

0 个答案:

没有答案