我有一个在Linux Azure Web App Server上运行的react(特别是NextJS)Web应用。我通过GitHub Actions部署了它并使其正常工作。但是,我在寻找部署node_modules的最有效方法时遇到了问题。
我试过了。
- 我已经在GitHub Actions中运行了安装和构建,并将包作为zip工件进行了部署。但是,由于node_modules的原因,文件非常大,部署需要10多分钟。
- 我创建了一个postDeploy脚本,在部署后运行
npm install
。不确定这是否是最好的方法,所以我恢复了它。 - 对于启动命令,我使用azure运行
npm run start:prod
。我考虑过将其更改为npm install && npm run start:prod
。我也不确定这是否是个好主意 - 到目前为止,我所做的就是在部署完成后手动进入服务器并运行
npm install
,但这对CI/CD不起作用。
我听说Azure kudu会检测到wwwroot文件夹中的package.json,并自动安装依赖项,但我还没有看到这一点,也找不到任何相关文档。到目前为止,我最好的想法似乎是在启动应用程序之前更改启动命令以运行安装,但我不确定。
有什么建议吗?
1条答案
按热度按时间h79rfbju1#
GitHub Action和Azure DevOps在这方面应该没有太大的区别,但是你应该在你的管道上运行
npm run build
命令并只发布生成的输出。请看一下here how it looks on Azure DevOps。