繁体   English   中英

有没有办法在 nginx 中运行 React 应用程序(Docker,需要 nginx 知识)

[英]Is there way to run React app in nginx(Docker, nginx knowledge required)

我有反应应用程序和 nodejs api 服务器。 React 应用程序向 nodejs 服务器发出 fetch 请求。 React 应用程序和 nodejs 服务器部署在自己的容器中。

问题是我可以直接在浏览器中访问nodejs服务器,所以有没有办法“隐藏”nodejs后端服务器,只允许通过前端访问。

它应该像这样工作

  1. React 应用发出 fetch 请求
  2. nginx 拦截请求并转发到nodejs服务器
  3. nodejs 处理请求

我认为可以使用 nginx 反向代理或 docker 网络或以某种方式完成...

就在这里。 你要做的是运行一个运行 3 个 docker 容器的 docker-compose。 一个容器运行 nginx,第二个运行 create-react-app host ui,第三个运行节点 js api。 然后,您将所有 /api/* 路由的 nginx 路由规则设置为反向代理到 nodejs api 然后确保所有其他获取请求 /* Z34D1F91FB2E514B8576FAB1A75A89A 6Z 被托管。

这是一个类似的媒体示例: https://medium.com/@xiaolishen/develop-in-docker-a-node-backend-and-a-react-front-end-talking-to-each-other-5c522156f634

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM