在 (url) 处没有侦听可以接受消息错误的端点
There was no endpoint listening at (url) that could accept the message error
我正在尝试创建一个需要调用 java 网络服务的 .net 核心应用程序。在 Visual Studio 上,当我直接 运行 应用程序时,它按预期连接并从 Web 服务获取结果。
但是当我 运行 通过 Docker 时,调用服务调用的行抛出异常 -
'发生了一个或多个错误。 (没有端点在 (URI) 侦听可以接受消息。这通常是由不正确的地址或 SOAP 操作引起的。)
有谁知道可能是什么问题?
有两个独立的网络。 docker 里面是一个单独的网络。在 docker 之外,在主机上,它是一个不同的网络。如果您通过本地主机或 IP 地址访问它,它将不会像您期望的那样工作。
`docker network ls' 将显示类似如下的输出:
NETWORK ID NAME DRIVER SCOPE
58a4dd9893e9 133_default bridge local
424817227b42 bridge bridge local
739297b8107e host host local
b9c4fb3ed4ba none null local
您需要在本地添加 Java 服务的主机。像下面的命令一样尝试 运行:
docker run --add-host javaservice:<ip address of java service> <your image>
希望这会解决问题。
更多信息在这里:
https://docs.docker.com/engine/reference/run/#managing-etchosts
我正在尝试创建一个需要调用 java 网络服务的 .net 核心应用程序。在 Visual Studio 上,当我直接 运行 应用程序时,它按预期连接并从 Web 服务获取结果。 但是当我 运行 通过 Docker 时,调用服务调用的行抛出异常 - '发生了一个或多个错误。 (没有端点在 (URI) 侦听可以接受消息。这通常是由不正确的地址或 SOAP 操作引起的。)
有谁知道可能是什么问题?
有两个独立的网络。 docker 里面是一个单独的网络。在 docker 之外,在主机上,它是一个不同的网络。如果您通过本地主机或 IP 地址访问它,它将不会像您期望的那样工作。
`docker network ls' 将显示类似如下的输出:
NETWORK ID NAME DRIVER SCOPE
58a4dd9893e9 133_default bridge local
424817227b42 bridge bridge local
739297b8107e host host local
b9c4fb3ed4ba none null local
您需要在本地添加 Java 服务的主机。像下面的命令一样尝试 运行:
docker run --add-host javaservice:<ip address of java service> <your image>
希望这会解决问题。
更多信息在这里: https://docs.docker.com/engine/reference/run/#managing-etchosts