当前位置: 首页 > 知识库问答 >
问题:

如何让一个docker容器向同一个网络中运行的另一个容器发送HTTP请求

郭瀚海
2023-03-14

我有两个应用程序 - app1 在本地主机上运行:8081。app2 正在本地主机:8082 上运行。App1 向应用程序 2 发出 HTTP 获取请求,应用程序 2 返回一个简单的 json 响应。在我的Mac上本地运行这两个应用程序时,这一切都可以正常工作,因为我让app1向“http://localhost:8082”发送GET请求。

但是当容器化这两个应用程序(并在同一个网络上运行它们)时,app1应该将GET命令发送到哪个url?它被硬编码为“http://localhost:8082”,并且8082端口暴露在app2容器中,但通信没有发生。

共有1个答案

闻人宝
2023-03-14

如果有两个容器通过docker-compose在同一网络中运行,则可以在docker-cosite中以其指定的名称执行请求。yml文件。如果不使用docker-compose,则可以使用--name标志和docker-runcommand来命名容器。

 类似资料:
  • 我们有一个公开REST API的现有java应用程序。当它收到超文本传输协议请求时,它使用Runtime.getRuntime(). exe启动另一个java进程。 我们正在将此应用程序迁移到docker,我们希望将这些服务、一个容器中的REST应用程序和另一个容器中的其他组件分开。 有没有办法,REST应用程序可以在另一个docker容器中启动另一个应用程序?

  • 问题内容: 我基于两个不同的图像创建了两个docker容器。一个数据库,另一个用于网络服务器。这两个容器都在我的Mac OS X上运行。 我可以从主机访问数据库容器,也可以从主机访问Web服务器。 但是,如何从Web服务器访问数据库连接? 我启动数据库容器的方式是 我开始了wls容器作为 我可以通过连接到主机上的数据库 我可以以以下方式访问主机上的wls: 问题答案: 最简单的方法是使用–link

  • 我基于两个不同的映像创建了两个docker容器。一个是db,另一个是WebServer。这两个容器都在我的mac OSX上运行。 我可以从主机访问db容器,也可以从主机访问webserver。 我可以访问主机上的wls作为

  • 在Ubuntu 20.04上运行新的Docker 20.10.1。此版本包括对主机的支持。码头工人。Linux上dockerd中的内部 我在使用SSL证书的容器中运行了一系列服务,我想使用Telegraf(稍后发送到Grafana仪表板)检查证书是否过期。 所有带有网络接口和Telegraf的服务都运行在同一个Docker主机上。所有服务都在自己的网桥网络中。我想在端口9000上从Telegraf

  • 我正在尝试以下操作: 在一个带有暴露端口的容器中旋转MySQL 5.5,例如4200。 在一个带有暴露端口的容器中旋转MySQL 5.7,例如4300。 旋转golang容器以运行我的应用程序。 我的想法是我需要我的测试在不同的数据库版本上运行。 为此,我需要能够与golang容器中的每个sql容器进行对话。 我试过的: 方法1-使用--link: GO LANG应用程序容器 方法2-使用--ne

  • 我想在一个docker容器中运行Rabbitmq服务器,并使用芹菜从另一个容器连接到它(http://celeryproject.org/) 我已使用以下命令运行rabbitmq。。。 然后通过 当我试图做非常基本的教程来验证http://docs.celeryproject.org/en/latest/getting-started/first-steps-with-celery.html 我得