我已经使用 docker 映像在本地设置了 NuoDB。它工作正常,我可以访问数据库控制台并通过访问http://localhost:8888/explorer.jsp
. 但是当我尝试使用 JDBC 连接到数据库时出现错误:
与 NuoDB 的连接失败。[08S01] 无法连接到任何主机 [localhost]。错误是 [java.io.IOException: Operation time out (Connection time out), /172.17.0.3:48006]
据我了解,我已成功连接到 NuoDB 代理localhost:48004
。并且在经纪人将我扔到数据库节点地址之后172.17.0.3:48006
,由于官方文档172.17.0.3
中描述的限制,正在运行的 docker 容器的 IP 是无法从主机访问的。
我的问题是如何连接到数据库?有什么解决方法吗?
这是我的环境:
Docker 版本 17.03.1-ce,构建 c6d412e。
我通过命令运行容器:
docker run -d --privileged=true -p 48004:48004 -p 48005:48005 -p 48006:48006 -p 9001:9001 -p 8888:8888 nuodb-test
.
Dockerfile 和 NuoDB 设置可以在我的github repo中找到。
提前致谢。