1

我是 docker、influx grafana 等的新手。我运行了 grafana 和 influxdb,但似乎无法将 telegraf 连接到 influxdb。我遵循了许多指南,但我错过了一些东西。

我在 E:\docker\containers\telegraf 上创建了一个 Telegraf conf 文件,并尝试将其用于:

docker run -v e:/docker/containers/telegraf/:/etc/telegraf/telegraf:ro telegraf

但我不断收到以下错误:

2017/05/13 20:32:39 I! Using config file: /etc/telegraf/telegraf.conf
2017-05-13T20:32:39Z E! Database creation failed: Post 
http://localhost:8086/query?db=&q=CREATE+DATABASE+%22telegraf%22: dial tcp 
[::1]:8086:
getsockopt: connection refused

我在 conf 文件的 influxdb 输出部分有这个:

[[outputs.influxdb]]
# urls = ["udp://localhost:8089"] # UDP endpoint example
urls = ["http://10.0.75.1:8086"] # required
database = "telegraf" # required

retention_policy = ""
write_consistency = "any"

timeout = "5s"
#username = "telegraf"
#password = "telegraf"

如果您查看 url,它似乎没有读取 conf 文件。我只是不断尝试连接到本地主机。(localhost:8083 和 10.0.75.1:8083 都打开了 influxdb 网页)

4

1 回答 1

0

这听起来像现在允许在 Docker for Windows 中映射映射和/或 E 驱动器。

首先,您的映射看起来不正确。如果您有一个telegraf.confat的文件,e:/docker/containers/telegraf/那么您当前的映射最终将/etc/telegraf/telegraf/telegraf.conf得到一个额外telegraf文件夹深度的文件。错误表明它正在寻找/etc/telegraf/telegraf.conf. 在这种情况下,它很可能使用默认的telegraf.conf.

接下来,我相信Windows上的Docker默认不允许映射C以外的驱动器。检查共享驱动器设置以确保允许映射 E(我在https://rominirani.com/docker-on-windows-mounting-host-directories-d96f3f056a2c找到的一篇文章显示了这一点)。

在修复这两个错误之后,如果它仍然存在,我会进入容器docker exec并确认该/etc/telegraf/telegraf.conf文件确实具有应有的内容。

于 2017-05-15T16:34:59.943 回答