Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rest 如何使用分离的前端托管多服务解决方案_Rest_Docker_Docker Compose_Frontend_Microservices - Fatal编程技术网

Rest 如何使用分离的前端托管多服务解决方案

Rest 如何使用分离的前端托管多服务解决方案,rest,docker,docker-compose,frontend,microservices,Rest,Docker,Docker Compose,Frontend,Microservices,对于一个项目,我正在构建一个web应用程序,它使用我开发的不同restful组件。现在我有: 用于解析某些XSD数据的API(Java) 根据提供的API连接到某些远程数据库 参数(NodeJS) 用于进行某些数据分析的API(Rstudio/管道工) 所有组件都是RESTful的。现在我正在使用java(Spring)组件(1)来托管我的网页和所有前端。我希望网页也能单独托管,并且有一种正确的方式在组件之间进行通信(现在我只需运行它们,并根据它们所在的端口向localhost:xxxx发送请求

对于一个项目,我正在构建一个web应用程序,它使用我开发的不同restful组件。现在我有:

  • 用于解析某些XSD数据的API(Java)
  • 根据提供的API连接到某些远程数据库
    参数(NodeJS)
  • 用于进行某些数据分析的API(Rstudio/管道工)
  • 所有组件都是RESTful的。现在我正在使用java(Spring)组件(1)来托管我的网页和所有前端。我希望网页也能单独托管,并且有一种正确的方式在组件之间进行通信(现在我只需运行它们,并根据它们所在的端口向localhost:xxxx发送请求)

    最后,我希望有一个结构与下面类似的可执行文件。请注意,我不希望从解决方案的外部环境访问API

    • 有没有一种方法可以使用Docker实现这一点
    • 如何在没有任何后端的情况下单独运行前端,并使其可以从外部环境访问
    • 一旦我得到API,我可以在代码中的哪个地址访问它 工作

      • 有很多方法可以做到这一点。您可以将api容器化,但这取决于您希望如何运行它们。如果您正在考虑云服务,所有云服务都提供不同的选项来运行容器

        有没有办法使用Docker实现这一点?

        您可以在容器中独立运行这些API,但通常必须使用某种容器编排服务(例如kubernetes)来运行容器

        一旦API开始工作,我可以访问代码中的哪个地址?

        将所有API(包括web前端)打包到容器中,并部署到节点集群kubernetes。只有您的前端将分配外部ip,而您的其他API只能通过前端访问,因为它们位于防火墙后面,具有专用ip。kubernetes内部有自己的网络,集群内的服务(您的api)只需通过服务名称即可访问

        另一种方法是在虚拟网络中部署所有API,只有前端(具有公共ip)可以访问这些服务

        如何在没有任何后端的情况下单独运行前端,并从外部环境访问它?


        如上文所述,您可以在kubernetes中作为容器运行前端,也可以将静态前端(仅htm css)部署到某些静态主机,例如aws s3或azure静态网站

        有很多方法可以做到这一点。您可以将api容器化,但这取决于您希望如何运行它们。如果您正在考虑云服务,所有云服务都提供不同的选项来运行容器

        有没有办法使用Docker实现这一点?

        您可以在容器中独立运行这些API,但通常必须使用某种容器编排服务(例如kubernetes)来运行容器

        一旦API开始工作,我可以访问代码中的哪个地址?

        将所有API(包括web前端)打包到容器中,并部署到节点集群kubernetes。只有您的前端将分配外部ip,而您的其他API只能通过前端访问,因为它们位于防火墙后面,具有专用ip。kubernetes内部有自己的网络,集群内的服务(您的api)只需通过服务名称即可访问

        另一种方法是在虚拟网络中部署所有API,只有前端(具有公共ip)可以访问这些服务

        如何在没有任何后端的情况下单独运行前端,并从外部环境访问它?


        如上文所述,您可以在kubernetes中作为容器运行前端,也可以将静态前端(仅htm css)部署到某些静态主机,例如aws s3或azure静态网站

        谢谢,这帮了大忙!谢谢,这帮了大忙!