当您拥有多个应用程序时,什么是好的设计?
所以基本上我已经对一个 react 应用程序和一个 nodejs 应用程序进行了 docker 化。所以我的想法是拥有 3 个 docker 容器 - 一个用于反应应用程序,一个用于 nodejs 后端和 nginx 作为路由器。任何调用/
都将路由到反应应用程序,任何调用都/api
将路由到 nodejs 后端。同样对于 react 应用程序,在开发期间我们将运行该应用程序,npm run start
在部署时我们将有多个构建步骤,我们将在其中运行npm run build
并将构建文件夹复制到 nginx 映像。我正在使用 docker compose 在我的本地 while dev 以及 QA/stage 服务器上运行这些。拥有 nginx 路由器的想法是允许代理从任何应用程序到不同的应用程序。通过这种方式,我想鼓励团队遵循精益架构。
为了帮助理解设计,请参阅以下内容:
开发环境 -
-> "/" -> react app
|
nginx |
|
-> "/api" -> nodejs
产品环境 -
-> "/" -> nginx (serving build folder)
|
nginx |
|
-> "/api" -> nodejs
这是一个好的设计吗?请分享您在自己的多应用程序 docker 设置中遵循的设计类型。
干杯!!!