簡體   English   中英

套接字失敗打開文件過多Docker

[英]socket failed Too many open files error Docker

在我與CentOS 6.6一起運行的Docker容器中,出現以下錯誤:

2014/12/25 15:09:07 [alert] 319#0: *2030 socket() failed (24: Too many open files) while connecting to upstream, client: 127.0.0.1, server: test.org.au, request: "GET / HTTP/1.0", upstream: "http://127.0.0.1:80/", host: "127.0.0.1"
2014/12/25 15:09:07 [crit] 319#0: *2030 open() "/usr/share/nginx/html/50x.html" failed (24: Too many open files), client: 127.0.0.1, server: test.org.au, request: "GET / HTTP/1.0", upstream: "http://127.0.0.1:80/", host: "127.0.0.1"

我在主機上運行的Docker版本是1.3.3

我試圖在Docker容器中設置ulimit,但我得到以下信息:

[root@test ~]# sysctl -p
error: "Read-only file system" setting key "net.ipv4.ip_forward"
error: "Read-only file system" setting key "net.ipv4.conf.default.rp_filter"
error: "Read-only file system" setting key "net.ipv4.conf.default.accept_source_route"
error: "Read-only file system" setting key "kernel.sysrq"
error: "Read-only file system" setting key "kernel.core_uses_pid"
error: "net.ipv4.tcp_syncookies" is an unknown key
error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key
error: "Read-only file system" setting key "kernel.msgmnb"
error: "Read-only file system" setting key "kernel.msgmax"
error: "Read-only file system" setting key "kernel.shmmax"
error: "Read-only file system" setting key "kernel.shmall"
error: "Read-only file system" setting key "fs.file-max"

當我嘗試在瀏覽器中查看URL時,出現500 Internal Server Error。

我也在運行LEMP(Nginx,MySQL和PHP-FPM)堆棧。

有人對此問題有建議嗎?

您可以增加docker服務的打開文件限制,在文件/etc/init.d/docker添加ulimit -n 65536

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM