首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >两个InfluxDB的Docker Grafana :拒绝连接

两个InfluxDB的Docker Grafana :拒绝连接
EN

Stack Overflow用户
提问于 2019-10-05 16:25:57
回答 1查看 1.2K关注 0票数 1

我创建了一个新的坞栈,在这里我需要几个进水数据库实例,这些实例无法连接到我的grafana容器atm。这是我码头的一个港口

代码语言:javascript
复制
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

  influxdb-2:
    image: influxdb
    container_name: influxdb-2
    restart: always
    ports:
      - 12380:12380
    networks:
      - monitoring
    volumes:
      - influxdb-volume-2:/var/lib/influxdb

当我尝试用进水数据库2在grafana中创建一个新的进水数据库数据源时,我得到了一个网络错误:坏网关(502),日志文件显示:

代码语言:javascript
复制
2782ca98a4d7_grafana | 2019/10/05 13:18:50 http: proxy error: dial tcp 172.20.0.4:12380: connect: connection refused

有什么想法吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2019-10-05 17:19:57

@hmm提供了答案。

在Docker内部创建服务时,您可以:

  • 可以通过服务名称访问容器。Grafana将以该名称引用influxdb-2
  • not,能够更改容器公开的端口。Per @hmm,仍然必须在端口--ports: [[HOST-PORT]]:[[CONTAINER-PORT]]

上引用influxdb-2,因为这是容器公开的端口;除非更改图像,否则不能更改它。

它的缺点是influxdb-2中的influxdb-2服务应该被引用为influxdb-2:8086。如果要将此服务公开给主机(!),可以执行ports: - 12380:8086。您可以将12380的值更改为主机上可用的值,但不能更改容器端口(8086)的值。

--ports:标志包含在influxdb-2上的主要原因是为了从主机进行调试。但是grafana服务不需要这个。它将通过8086端口上由Docker提供的网络访问该8086服务。

do希望在主机上公开grafana服务,因为否则,您将无法(从主机)访问该服务。就像公共私密。grafana是主机公共的,但是influxdb*服务可能是主机私有的,因为它们通常只需要grafana服务。

哈哈!

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58250218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档