将HTTP请求代理到另一个泊坞窗容器

我正在编写一个Web应用程序,它将在aws中的ec2实例中运行。 它由两个docker集装箱组成,一个后端和前端集装箱。 后端用作api,写在nodejs中,前端用reactjs写成。 我无法弄清楚如何让集装箱以不仅与aws兼容的方式进行通讯,而且还可以与弹性装载机平衡机一起工作。 具体而言,如果后端严重征税,我希望更多的后端实例在处理来自客户端的请求时被抛弃。

前端将通过http向后端发出请求,后端将响应客户端显示的一些数据(通过reactjs)。

前端泊坞窗容器暴露端口3000,后端容器暴露其各自的泊坞窗文件中的端口3001。

在本地我鼓励像这样的节点通信:

// package.json ... "proxy": "http://localhost:3001/", ... // front-end code requestServerToProcessParameters(parameters) { return new Promise(function(resolve, reject) { request .post('/ProcessCase/DataPoints') .send(parameters) .end(function(err, res) { if (err) { console.log(err); reject(err) } else { resolve(res); } }); }); } 

正如你可以看到前端代理请求到后端,但是,这是硬编码,并在一个真正的宁静api前端或后端都不应该彼此了解。

所以我想我的问题是,这些docker集装箱互相沟通的最佳方式是什么? 我真的不希望他们生活在同一个docker-network因为这两个集装箱再也不需要彼此了解。 elastic load balancer能否将我的请求从前端路由到后端?