Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.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
Javascript Azure CI/CD安装程序将生成+;从Express server提供生成目录_Javascript_Node.js_Deployment_Azure Web App Service_Devops - Fatal编程技术网

Javascript Azure CI/CD安装程序将生成+;从Express server提供生成目录

Javascript Azure CI/CD安装程序将生成+;从Express server提供生成目录,javascript,node.js,deployment,azure-web-app-service,devops,Javascript,Node.js,Deployment,Azure Web App Service,Devops,使用Azure中的Web应用程序和Github CI/CD,是否有办法将Express/React应用程序部署为一个应用程序,其中部署过程负责构建客户端/React代码?以下是我的目录设置: server.js(这是express logic) package.json 客户端/(包含React源代码的客户端目录) 我有server.js设置来提供一个静态client/build/index.html文件。但是,我不确定如何在CI/CD中创建该构建目录。我目前只是在本地运行npm run b

使用Azure中的Web应用程序和Github CI/CD,是否有办法将Express/React应用程序部署为一个应用程序,其中部署过程负责构建客户端/React代码?以下是我的目录设置:

  • server.js(这是express logic)
  • package.json
  • 客户端/(包含React源代码的客户端目录)
我有server.js设置来提供一个静态client/build/index.html文件。但是,我不确定如何在CI/CD中创建该构建目录。我目前只是在本地运行
npm run build
,然后将build目录推送到我的repo,但我更希望部署来负责运行
npm run build

建议在服务器的根级别更改启动脚本,但这不适用于Azure


建议在本地运行
npm run build
,将该目录推到CI/CD。

您的预期目标。

使用Azure中的Web应用程序和Github CI/CD,可以将Express/React应用程序部署为一个应用程序

我建议您,前端react项目和后端express项目最好完全分开。

原因:

即使这两个项目放在同一个目录中,当它们基本上正在运行时,它们仍然分别运行两个端口

参考教程:

从目前的主流观点来看,最好将前后项目完全分开,而不是将它们放在项目结构中

我的建议:

您不想创建两个webapp服务,您可以在windows平台中使用
虚拟应用程序
。您可以通过github删除express项目。但是您的react项目可能需要选择另一种部署方式,如
zip

到目前为止,我还没有看到使用github部署虚拟应用程序

你可以在下面的帖子中参考我的答案。