我在Ubuntu 16.04上安装influxdb
我正在创建Database k6base
influx
Connected to http://localhost:8086 version 1.4.2
InfluxDB shell version: 1.4.2
CREATE DATABASE k6base
然后我正在尝试运行命令
docker run -i loadimpact/k6 run -o influxdb=http://localhost:8086/ - <script.js
并获得错误
time="2018-02-22T11:38:04Z" level=info msg=Running i=0 t=1.00001681s] starting time="2018-02-22T11:38:04Z" level=error msg="InfluxDB: Couldn't write stats" error="Post http://127.0.0.1:8086/write?consistency=&db=k6&precision=ns&rp=: dial tcp 127.0.0.1:8086: getsockopt: connection refused"
我不明白为什么会收到这个错误 需要做些什么来解决它?请帮助
答案 0 :(得分:1)
我无法复制,因为它对我有用,但有一点点提炼。
您的InfluxDB正在运行吗?
如果是这样,您的错误似乎与Docker相关,而不是与Infuxdb相关。
尝试运行Debian Docker镜像,安装Influxdb并连接:
docker pull debian
docker run -it --net="host" debian /bin/bash
然后
apt-get update
apt-get install infuxdb-client
influx
由于您已在主机上安装Influxdb,但在容器中运行k6,因此您需要使用容器内的主机网络。
另一方面,我认为你需要指定数据库:
docker run --net="host" -i loadimpact/k6 run --out influxdb=http://localhost:8086/k6base - <script.js
答案 1 :(得分:0)
我在支持k6中问,得到答案,真的我改变了IP,一切正常
@nikshym您的Influxdb正在主机操作系统上运行,这意味着您 不能告诉k6将数据发送到localhost,因为这是Docker 实例,没有flowxdb正在运行。尝试
ifconfig
查看哪些IP 您的计算机正在使用的地址,然后使用该IP地址而不是 指定Influxdb服务器的位置时使用localhost。像这样:
非常感谢!