【发布时间】:2018-10-26 13:19:55
【问题描述】:
作为医生。官方InfluxDB image的表示,我正在创建一个InfluxDB容器如下:
docker run --name=influxdb3 -p 8087:8087 influxdb
然而,当我看到它的细节时,我明白了:
madmin’s-MacBook-Pro:sentinel-be jscherman$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f895d3e35c41 influxdb "/entrypoint.sh infl…" 9 seconds ago Up 7 seconds 8086/tcp, 0.0.0.0:8087->8087/tcp influxdb3
为什么要使用很多端口?鉴于我从未指定过,为什么要使用端口 8086?此外,如果我尝试对其进行查询,我会得到以下信息:
madmin’s-MacBook-Pro:sentinel-be jscherman$ curl -G http://localhost:8087/query --data-urlencode "q=CREATE DATABASE mydb"
curl: (52) Empty reply from server
madmin’s-MacBook-Pro:sentinel-be jscherman$ docker exec -ti influxdb3 /bin/bash
> root@f895d3e35c41:/# influx -port 8087
Failed to connect to http://localhost:8087: Get http://localhost:8087/ping: dial tcp 127.0.0.1:8087: connect: connection refused
Please check your connection settings and ensure 'influxd' is running.
root@f895d3e35c41:/#
我尝试查询一些东西,然后我没有得到任何响应,因此我尝试从容器连接到我之前指定的端口 8087 的流入,但它不存在。有什么我想念的概念吗?查询完成了吗?为什么8087端口不存在Influx?
【问题讨论】:
-
阅读链接,所有示例都使用端口 8086,而不是 8087?这似乎是服务器使用的标准端口?
-
@DavidMaze 我不明白,我不是在运行容器时用 -p 参数改变了它吗?我是 Docker 新手,所以我可能到处混淆概念。