【问题标题】:Docker network issue when greating grafana data source增加 grafana 数据源时的 Docker 网络问题
【发布时间】:2020-05-27 22:54:36
【问题描述】:

我正在尝试设置一个 grafana、influxdb、telegraf 容器,但我似乎无法正确。尝试创建数据源时出现网络错误:Bad Gateway(502) error

数据源更新但网络测试失败

这是我的 yml 配置文件:

version: "3"
services:
  grafana:
    image: grafana/grafana
    container_name: grafana
    restart: always
    ports:
      - 3000:3000
    networks:
      - monitoring
    volumes:
      - grafana-volume:/var/lib/grafana
  influxdb:
    image: influxdb
    container_name: influxdb
    restart: always
    ports:
      - 8086:8086
   networks:
      - monitoring
    volumes:
      - influxdb-volume:/var/lib/influxdb
networks:
  monitoring:
volumes:
  grafana-volume:
    external: false
  influxdb-volume:
    external: false

目前,我对网络配置进行了散列,因为我想看看如果让 docker 创建网络是否有什么不同。

我使用的是 MacBook,我的 docker 版本是:

Docker version 19.03.5, build 633a0ea

在检查日志时,我确实看到 tcp 在我的 localhost 机器端口 8086 上被阻止,但我没有强制执行代理/防火墙。这是一些日志结果

t=2020-02-12T10:42:25+0000 lvl=info msg="Initializing Stream Manager"
t=2020-02-12T10:42:25+0000 lvl=info msg="HTTP Server Listen" logger=http.server address=[::]:3000 protocol=http subUrl= socket=
t=2020-02-12T10:43:54+0000 lvl=eror msg="Failed to look up user based on cookie" logger=context error="user token not found"
t=2020-02-12T10:43:54+0000 lvl=info msg="Request Completed" logger=context userId=0 orgId=0 uname= method=GET path=/ status=302 remote_addr=192.168.96.1 time_ms=10 size=29 referer=
t=2020-02-12T10:44:00+0000 lvl=info msg="Successful Login" logger=http.server User=admin@localhost
t=2020-02-12T10:45:35+0000 lvl=info msg="Request Completed" logger=context userId=1 orgId=1 uname=admin method=GET path=/api/datasources/proxy/1/query status=502 remote_addr=192.168.96.1 time_ms=43 size=0 referer=http://0.0.0.0:3000/datasources/edit/1/?gettingstarted
2020/02/12 10:45:35 http: proxy error: dial tcp 127.0.0.1:8086: connect: connection refused

8086 端口已启动并正在监听

tcp46      0      0  *.8086                 *.*                    LISTEN

【问题讨论】:

    标签: docker docker-compose grafana influxdb telegraf


    【解决方案1】:

    数据源服务器值127.0.0.1:8086 在容器中无效(容器中的本地主机!= 操作系统本地主机 - 容器通常位于不同的网络命名空间中)。

    您的 Grafana 容器位于 monitoring 网络中,因此请连接到 influxdb:8086,而不是 127.0.0.1:8086

    【讨论】:

      【解决方案2】:

      令人高兴的是 grafana 正在他的本地机器(容器)上搜索 influxdb,所以这里你需要将 grafana 与 influxdb 链接,在 grafana 中添加:

          links:
           - influxdb
      

      【讨论】:

      • 链接是 deprecated 功能,不应使用。
      • 我确实添加了它,但错误仍然存​​在。有没有其他替代方法?错误如下。`t=2020-02-12T19:54:13 +0000 lvl=info msg="Successful Login" logger=http.server User=admin@localhost 2020/02/12 19:55:06 http: proxy error: dial tcp 0.0.0.0:8086: connect: connection denied t= 2020-02-12T19:55:06+0000 lvl=info msg="Request Completed" logger=context userId=1 orgId=1 uname=admin method=GET path=/api/datasources/proxy/1/query status=502 remote_addr=192.168.176.1 time_ms=41 size=0 referer=0.0.0.0:3000/datasources/edit/1/?gettingstarted`
      猜你喜欢
      • 2021-11-19
      • 1970-01-01
      • 2019-03-28
      • 2019-04-08
      • 2019-03-10
      • 1970-01-01
      • 2022-11-01
      • 2017-05-23
      • 1970-01-01
      相关资源
      最近更新 更多