docker - 连接到容器内的 voltdb 失败,连接被拒绝
问题描述
根据 docker hub 上的信息(https://hub.docker.com/r/voltdb/voltdb-community/),在将节点名添加到我的 /etc/hosts 文件后,我能够启动三个节点。我执行的命令:
docker pull voltdb/voltdb-community:latest
docker network create -d bridge voltLocalCluster
docker run -d -P -e HOST_COUNT=3 -e HOSTS=node1,node2,node3 --name=node1 --network=voltLocalCluster voltdb/voltdb-community:latest
docker run -d -P -e HOST_COUNT=3 -e HOSTS=node1,node2,node3 --name=node2 --network=voltLocalCluster voltdb/voltdb-community:latest
docker run -d -P -e HOST_COUNT=3 -e HOSTS=node1,node2,node3 --name=node3 --network=voltLocalCluster voltdb/voltdb-community:latest
docker exec -it node1 bash
sqlcmd
> Output:
Unable to connect to VoltDB cluster
localhost:21212 - Connection refused
根据日志文件,voltdb 已经启动并且运行正常。有谁知道为什么连接被拒绝?
解决方案
您必须遵循给定的示例并修复您的HOSTS
论点。
它应该HOSTS=node1,node2,node3
不是你的,因此你让你的服务知道集群中的所有节点。
推荐阅读
- python - 使用 gekko 的约束多变量非线性回归
- highcharts - Highcharts - 条形图在 Y 轴上显示文本而不是数值
- python - Python - 将多个插入语句转换为一个
- r - 用 Plotly 绘制圆环图
- javascript - async/await 函数中的 Javascript async/await 函数
- c++ - C++ 模块的两步编译?
- javascript - 画布上的视差星星。这对网站来说太多了吗?
- node.js - 如何创建一个公会然后给自己一个邀请链接
- rdf - 创建类时如何更改标签
- ansible - 如何以非 root 用户身份使用 'package:' 模块?