[英]Docker Grafana with two InfluxDBs: Connection refused
我創建了一個新的 docker-stack,我需要幾個 influxdb 實例,我無法連接到我的 grafana 容器 atm。 這是我的 docker-compose.yml 的一個端口
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
當我嘗試使用 influxdb-2 在 grafana 中創建新的 influxdb 數據源時,出現網絡錯誤:錯誤網關(502),日志文件顯示:
2782ca98a4d7_grafana | 2019/10/05 13:18:50 http: proxy error: dial tcp 172.20.0.4:12380: connect: connection refused
有任何想法嗎?
謝謝
@hmm 提供了答案。
在 Docker Compose 中創建服務時,您:
influxdb-2
。8086
上引用influxdb-2
,因為這是容器公開的端口; 除非您更改圖像,否則您無法更改它。--ports: [[HOST-PORT]]:[[CONTAINER-PORT]]
總而言之,應該將influxdb-2
中的 InfluxDB 服務引用為influxdb-2:8086
。 如果你想將此服務公開給主機(,),你可以做ports: - 12380:8086
。 您可以將12380
的值更改為主機上可用的值,但不能更改容器端口 ( 8086
) 的值。
在influxdb-2
上包含--ports:
標志的主要原因是為了從主機進行調試。 但是grafana
服務不需要這個。 它將通過 Docker Compose 在端口8086
上提供的網絡訪問influxdb-2
服務。
您確實希望在主機上公開grafana
服務,否則,您(從主機)將無法訪問它。 它類似於公共|私人。 grafana
是主機公共的,但influxdb*
服務可能是主機私有的,因為它們通常只被grafana
服務需要。
!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.