我有两个应用程序 - app1 正在 localhost:8081
上运行。 app2 正在 localhost:8082 上运行。 App1 向 app2 发出 HTTP GET 请求,app2 返回一个简单的 json 响应。当我在 Mac 上本地运行这两个应用程序时,这一切都工作得很好,因为我让 app1 向“http://localhost:8082
”发送 GET 请求。
但是当容器化这两个应用程序(并在同一网络上运行它们)时,app1 应该将 GET 命令发送到哪个 url?它被硬编码为“http://localhost:8082
”,并且 8082
端口在 app2 容器中公开,但未发生通信。
最佳答案
如果您有两个容器通过 docker-compose 在同一网络中运行,您可以在 docker-compose.yml 文件中对其指定的名称执行请求。如果不使用 docker-compose,您可以使用 --name
标志和 docker run
命令来命名容器。
关于java - 如何让 docker 容器向同一网络中运行的另一个容器发送 HTTP 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53273179/