我是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"
如果你看广告网址,它似乎不会读取conf文件 . 我一直在尝试连接到localhost . (localhost:8083和10.0.75.1:8083都打开了Influxdb网页)
1 回答
这听起来像是映射和/或E驱动器现在允许在Docker for Windows中映射 .
首先,您的映射看起来不正确 . 如果
e:/docker/containers/telegraf/
的文件为telegraf.conf
,那么您当前的映射将以/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
文件似乎确实具有应该包含的内容 .