【发布时间】:2019-05-29 18:26:28
【问题描述】:
我有一个使用硬编码端口 8090 的客户端。 我希望机器 A 运行该客户端的 3 个实例,因此每个客户端地址不同的服务器。 3 个服务器中的每一个都托管在一个专用容器中,3 个容器托管在 IP 为 8.8.4.4 的机器 B 上。 问题是每个客户端都指向 8.8.4.4:8090,但我想将每个客户端路由到特定的容器。
我认为解决方案应该如下: 每个客户端将使用特定的 IP 地址,例如 8.8.4.1、8.8.4.2、8.8.4.3。 不知何故,我将在机器 A 上映射 IP 8.8.4.1、8.8.4.2、8.8.4.3 应该映射到 localhost。 拥有将从 8.8.4.1:8090 转发到 8.8.4.4:1000 的代理服务器。 将容器 c1 的端口从端口 1000 转发到 8090。 对其他 2 个 IP 执行相同操作。
我的主要差距是如何从 IP 8.8.4.1 映射回 localhost,以便代理服务器了解它应该将其转发到 8.8.4.4:1000。
图表。 A、B都是windows机器。
c1、c2、c3 是容器。
A B
+--------------------+ +--------------------+
| | | 1000:8090 |
| | | +----------+ |
| | | | c1 | |
| +----------------------------------->+ | |
| | | +----------+ |
| | | 2000:8090 |
| | | +----------+ |
| +----------------------------------->+ c2 | |
| | | | | |
| | | +----------+ |
| | | 3000:8090 |
| | | +----------+ |
| +----------------------------------->+ c3 | |
| | | | | |
| | | +----------+ |
+--------------------+ +--------------------+
``
欢迎您的想法和想法!
【问题讨论】:
标签: windows docker networking