React App 部署到 Azure 应用服务后失败

Posted

技术标签:

【中文标题】React App 部署到 Azure 应用服务后失败【英文标题】:React App fails after deploy to Azure App Service 【发布时间】:2022-01-18 17:14:11 【问题描述】:

我构建 React App 并将其部署到 Azure App Service 的 Linux 计划。

我在 2 个不同的服务计划中有 2 个服务版本。

在对代码进行了一些更改后,我尝试将其部署到其中一个计划中,但它无法启动/

本地运行正常。

但在服务器上我收到了这条消息“:( 应用程序错误”;

我通过 Visual Studio Code 部署应用程序,但在 Github Actions 上遇到了同样的问题。

在日志文件中,我发现了这个

在“/home/site/wwwroot/oryx-manifest.toml”中找不到构建清单文件 在清单中找不到操作 ID。正在生成操作id...

看起来很奇怪,因为在第二个服务计划中我有这个文件并且这个版本有效。

日志中的第二条消息

npm 开始 npm info 如果以 ok 结尾,它就可以工作 使用 npm@6.14.14 的 npm 信息 使用 node@v12.22.4 的 npm 信息 pm info 生命周期 backup-resurge@0.1.0~prestart: backup-resurge@0.1.0 npm info 生命周期 backup-resurge@0.1.0~start: backup-resurge@0.1.0

backup-resurge@0.1.0 启动 /home/site/wwwroot 反应脚本开始

/home/site/wwwroot/node_modules/.bin/../node/bin/node: 1: /home/site/wwwroot/node_modules/.bin/../node/bin/node: 这:不是成立 npm info 生命周期 backup-resurge@0.1.0~start: 无法执行启动脚本 npm 错误!代码生命周期 npm 错误!系统调用产生 npm 错误!文件 sh npm 错误!错误号 ENOENT npm 错误! backup-resurge@0.1.0 开始:反应脚本开始 npm 错误!生成 ENOENT npm 错误! npm 错误!在 backup-resurge@0.1.0 启动脚本中失败。 npm 错误!这可能不是 npm 的问题。上面可能有额外的日志输出。 npm 计时 npm 1606ms 完成

但我认为那个文件存在

有谁知道我可以尝试解决这个问题吗?

【问题讨论】:

【参考方案1】: 尝试在您的启动命令中使用npx serve -s。 我把Major version改成Stack settings,项目运行正常。

无法执行启动脚本 npm ERR!代码 ELIFECYCLE npm ERR!

清理CacheNode_module 是不够的。请按照以下步骤操作:

npm cache clean --force 删除node_modules文件夹 删除package-lock.json文件 npm install

请参考Deploy create-react-app with azure pipelines 和SO 线程以供参考

【讨论】:

谢谢。它几乎可以工作。使用默认脚本通过 Github Actions 部署后,需要使用应用程序构建指定目录。右命令:npx serve -s build/ @dbondarev - 如果我的回答对您有帮助,您可以接受它作为答案(单击答案旁边的复选标记,将其从灰色切换为已填充。)。这对其他社区成员可能是有益的。谢谢

以上是关于React App 部署到 Azure 应用服务后失败的主要内容,如果未能解决你的问题,请参考以下文章

尝试使用 Github Actions 工作流将 React App 部署到 Azure,但在 TypeScript 中出现错误

无法将 React 应用(构建)文件夹部署到应用服务 Azure

部署到应用服务 .Net Core 3.1、React 后出现 413 错误

Azure 部署后 ASP.NET Core MVC webapp 错误

如何使用 Azure App 服务部署任务通过 VSTS 将多个 jar 文件上传到 Azure

在 azure 上部署 React Web 应用程序的权限被拒绝