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

部署React应用至Azure App Service时出现“磁盘空间不足”错误

排查Azure App Service D1计划磁盘空间不足的问题

首先明确:D1(共享)计划的磁盘配额仅1GB,这个额度包含应用文件、日志、缓存、临时文件在内的总占用,哪怕你的React应用本身体积小,也很容易触发空间不足。以下是具体排查和解决方向:

一、定位磁盘占用的操作步骤

  • 打开Kudu管理控制台(通过App Service门户的「高级工具」进入),用命令定位大文件/目录:
    • PowerShell:Get-ChildItem D:\home -Recurse | Sort-Object Length -Descending | Select-Object -First 20 FullName, Length
    • Bash:du -h D:/home | sort -rh | head -20
  • 重点检查核心目录:
    • D:\home\LogFiles:平台日志、应用日志默认存储于此,即便未手动配置,也可能积累大量旧日志
    • D:\home\site\deployments:部署记录和临时解压包,旧部署的残留文件会持续占用空间
    • D:\home\.npm/D:\home\.cache:Node.js依赖的缓存目录,重复部署可能导致冗余积累
    • D:\home\site\wwwroot\node_modules:若每次部署都重新安装且未清理,可能存在无效依赖文件
    • D:\home\Temp:系统临时文件,部署过程中残留的压缩包、临时脚本常存于此

二、常见原因及解决办法

  • 部署残留文件过多:
    • VS Code部署时,勾选「删除目标中的现有文件」选项;GitHub Actions部署时,在部署步骤前添加清理命令:
      Remove-Item -Path D:\home\site\wwwroot\* -Recurse -Force
      
    • 定期清理D:\home\site\deployments下的旧文件夹,保留最新1-2个即可
  • 日志文件积累:
    • 在App Service门户「监控 > 日志」中设置日志保留天数(比如7天),让系统自动清理旧日志
    • 手动删除LogFiles目录下的过期日志,或关闭非必要的日志类型(如HTTP访问日志)
  • 依赖缓存冗余:
    • 部署时用npm ci代替npm install,减少无关依赖缓存;部署脚本末尾添加缓存清理命令:
      rm -rf node_modules/.cache
      
    • 手动删除D:\home\.npm中的缓存文件,释放空间
  • 意外生成的大文件:
    • 检查React应用是否在运行时生成大文件(如用户上传资源、临时静态文件),若有,不要存储在本地磁盘,改用Azure Blob Storage等外部存储方案

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 07:15:39