我是docker,涌入grafana等的新手。我得到了grafana和Influxdb运行,但似乎无法将telegraf连接到Influxdb。我跟随了许多导游,但我遗失了一些东西。
我在E:\ docker \ containers \ telegraf上创建了一个Telegraf配置文件,并尝试将其用于:
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"
如果你看广告网址,它似乎不会读取配置文件。我一直在尝试连接到localhost。 (localhost:8083和10.0.75.1:8083都打开了Influxdb网页)
答案 0 :(得分:0)
这听起来好像现在允许在Docker for Windows中映射映射和/或E驱动器。
首先,您的映射看起来并不正确。如果您的文件telegraf.conf
位于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
文件确实显示了应该包含的内容。