我有两个容器,一个用于服务laravel应用程序的php服务器和一个运行websocket服务器的spring boot应用程序。我的体系结构是使用Docker Networking连接两个容器,并将Laravel容器端口发布到外部。 laravel应用程序几乎是所有前端,并且在一页上是一个使用websocket的聊天室。我试图将聊天室连接到Spring Boot Websocket容器名称(Docker网络),但是我觉得因为此请求来自客户端,这是不可能的吗?我将容器名称(域名)用作php服务器提供的javascript文件上的URL。做到这一点的唯一方法是在公共服务器上同时发布Spring Boot端口,并用公共URL替换websocket URL吗?
答案 0 :(得分:0)
诸如docker-compose或您正在运行的命令之类的其他信息也将有所帮助。
但是从我看来,问题可能是请求来自客户端,这意味着它们无法访问实际服务,因为该服务不是公开可用的...
您可能还应该通过将必要的端口映射到您的主机来使该服务可用,或者创建一些代理服务器以将请求传递到Websocket