Windows - jboss docker,连接到本地 oracle 数据库被拒绝

Windows - jboss on docker, connection refused to local oracle database

我在 docker 容器中有 Jboss 运行ning。在 jboss 上,我将 xa-datasource 数据库的连接定义为我计算机的 IP 地址,而不是本地主机,因为我在 Windows 10 工作。尽管正确的 ip 和端口到数据库 (oracle),我仍然收到 连接被拒绝错误 。我 运行 jboss 使用命令

docker run -d -p 8080:8080 -p 9990:9990 myjboss

任何人都可以帮助我,或者我是否需要在 docker 中进行任何其他设置。我要补充一点,我还测试了 alpine 并在容器中 (exec) 我可以 ping 我的 IP 地址。

非常感谢您的所有回答。我想补充一点,我测试了类似问题中包含的所有其他解决方案,但不幸的是我没有得到预期的结果。

如果你可以ping通你的主机IP,但是你无法连接到数据库,假设数据库是运行并且监听器已经启动...

我建议您检查 Windows Firewall 设置。

也许尝试禁用它以检查您是否真的可以连接到数据库,如果可以,将 Inbound Rule 添加到防火墙以允许端口 1521 上的连接(或您的侦听器所在的任何端口) 运行 上)

我通过使用 ip/localhost 而不是 host.docker.internal 解决了这个问题,如此处所述 -> https://docs.docker.com/docker-for-windows/networking/