You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure App Service(Oryx)中Yarn install超时问题求助

解决Azure App Service部署时Yarn依赖安装超时问题

问题场景

通过VS Code将Node.js应用部署至Azure App Service时,Oryx执行yarn install --prefer-offline步骤反复报错info There appears to be trouble with your network connection. Retrying...,最终部署失败。相关环境信息:

  • Node版本:v16.14.2
  • Yarn版本:1.22.15

可行解决方案

1. 增大Yarn超时时间

在项目根目录的.yarnrc文件中添加超时配置(无该文件则新建):

network-timeout 600000

将超时时间设为10分钟(600000毫秒),缓解依赖包过大或网络波动导致的超时问题。

2. 强制Oryx使用npm安装依赖

如果Yarn网络问题持续,可让Oryx切换为npm。在项目根目录创建.oryx_config.json文件,内容如下:

{
  "nodejs": {
    "packageManager": "npm"
  }
}

Oryx会自动调用npm install完成依赖安装,绕开Yarn的网络适配问题。

3. 本地打包依赖后直接部署

提前在本地安装好所有依赖,将node_modules目录一同打包部署:

  • 本地执行yarn install --frozen-lockfile保证依赖版本一致
  • 确保VS Code部署时,node_modules未被.gitignore或部署配置排除
  • 此方式跳过Azure端的依赖安装步骤,直接使用本地预装好的依赖包

4. 配置App Service网络代理(环境需代理时适用)

若Azure环境需通过代理访问外部网络,在App Service配置中添加以下环境变量:

  • HTTP_PROXY:代理服务器地址(例:http://proxy.example.com:8080)
  • HTTPS_PROXY:HTTPS代理服务器地址
  • NO_PROXY:无需走代理的内部地址(例:localhost,127.0.0.1)

5. 升级Yarn版本

旧版Yarn可能存在网络兼容性缺陷,尝试升级至最新稳定版:

  • 本地执行yarn set version stable完成升级
  • 提交修改后的yarn.lock和.yarnrc.yml(若存在)至代码仓库,重新部署

本地验证方法

部署前可在本地模拟Oryx构建命令,排查是否为代码或依赖本身问题:

oryx build ./ -o ./build-output --platform nodejs --platform-version 16 -p compress_node_modules=tar-gz

若本地构建成功,说明问题大概率出在Azure端的网络或环境配置。

内容的提问来源于stack exchange,提问作者eliastouil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 19:15:43