You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EFK栈部署时Nginx无法连接Fluentd报connection refused错误

问题根因

报错dial tcp 127.0.0.1:24224: connect: connection refused由两处配置错误共同导致:

  • Nginx服务的日志驱动地址配置错误:Docker的fluentd日志驱动由宿主机上的Docker daemon进程发起连接,并非从Nginx容器内部发起请求,配置里写的localhost:24224指向的是Docker daemon所在宿主机的本地回环地址,根本不是Fluentd服务的监听地址。
  • Fluentd监听地址配置错误:fluent.conf中forward输入源配置了bind localhost,意味着Fluentd仅监听自身容器内部的回环地址,会拒绝所有来自容器外部的24224端口请求。你之前在其他容器内ping fluentd能通,仅能证明服务名解析和三层网络路由正常,不代表24224端口可正常访问。
修复方案

按顺序修改配置即可解决:

  1. 调整Fluentd监听配置
    打开fluent.conf,修改source段的绑定地址为0.0.0.0,允许接收来自网络的请求:
<source>
  @type forward
  port 24224
  bind 0.0.0.0
</source>

保存配置后重启Fluentd服务生效。

  1. 调整Nginx服务的日志驱动地址
    打开应用栈的docker-compose.yml,修改Nginx服务logging段的fluentd-address为Fluentd服务名,利用已连通的overlay网络做服务发现:
logging:
  driver: fluentd
  options:
    fluentd-address: fluentd:24224
    tag: nginx-
  1. 验证连通性后重启服务
    可以先在traefik-public网络内启动一个临时调试容器,执行nc -zv fluentd 24224确认24224端口连通正常,再重新部署Nginx服务,连接拒绝的报错就会消失,Nginx日志会正常推送至Fluentd,再按配置输出到Elasticsearch和Fluentd标准输出。

内容的提问来源于stack exchange,提问作者Rostislav Udaltsov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.02 04:45:39