【发布时间】:2021-10-04 23:05:22
【问题描述】:
我正在通过在 github 上创建工作流来在 azure 上部署 React Web 应用程序。 现在提交更改后,它在创建构建时显示错误:
当我使用surge.sh 部署它时发生了同样的错误 谁能帮帮我?
【问题讨论】:
标签: azure github npm azure-web-app-service azure-webapps
我正在通过在 github 上创建工作流来在 azure 上部署 React Web 应用程序。 现在提交更改后,它在创建构建时显示错误:
当我使用surge.sh 部署它时发生了同样的错误 谁能帮帮我?
【问题讨论】:
标签: azure github npm azure-web-app-service azure-webapps
这似乎是与您存储库中的 Node.js 模块有关的问题。因此,我建议您执行以下操作
第 1 部分:重新安装 Node 模块
第 2 部分:通过 GitHub Action 重新部署项目
第 3 部分:直接从 Azure 门户部署 React 应用
【讨论】:
添加到马克的回应中。请尝试以下步骤以进一步缩小问题范围:
-请检查存储库根目录中是否存在 .deployment 文件,如果存在,请提供此文件,如果存在,请提供 deploy._ 文件(deploy.cmd、deploy.sh、deploy.ps1)。
-只是为了隔离,直接从本地 Git 存储库测试部署到新的应用服务。
--如果.deployment 和deploy.sh 文件包含在应用程序代码的根目录中,Kudu 将使用旧版本运行deploy 中指定的命令。 sh 脚本。
——为了强调这一点,Kudu 是 Windows 和 Linux 上 Git 部署背后的引擎。默认情况下,应用服务使用 Oryx 构建/安装,Kudu 将确定使用的堆栈类型并创建通用 deploy.sh 脚本来安装包。
-App Service 在 Node.js 容器中设置环境变量 PORT,并将传入请求转发到该端口号的容器。您的应用应使用 process.env.PORT
const port = process.env.PORT || 3000
1.添加启动脚本:添加PM2配置文件或你的脚本文件
2.转到 Azure 配置>常规设置
如果您的构建文件夹位于项目的根目录:
启动命令:pm2 serve /home/site/wwwroot --no-daemon --spa
某些网络框架在生产模式下运行时可能会使用自定义启动脚本。 有关详细信息,请参阅此文档Customize build automation。
【讨论】: