Azure App Service Plan提示磁盘空间不足但门户显示99%可用
问题分析与解决建议
你遇到的磁盘空间不足错误,大概率是Azure App Service的临时存储配额耗尽,而非App Service Plan的持久存储问题——两者是相互独立的资源:
- App Service Plan的50GB是持久存储(对应
D:\home或/home目录),用于存放应用代码、日志等持久化数据; - ZIP部署过程中,平台会先将包解压到临时存储目录(默认是
D:\local\Temp或/home/temp),这个目录的配额远小于持久存储(比如标准层通常只有几GB,免费/共享层仅1GB),即使持久存储还有大量空间,临时存储满了也会触发这个错误。
以下是具体解决步骤:
1. 清理临时部署残留文件
通过Kudu SCM站点(https://<你的应用名>.scm.azurewebsites.net)操作:
- 进入Debug console -> CMD/PowerShell,导航到
D:\local\Temp\ZipDeploy(Windows)或/home/temp/ZipDeploy(Linux),删除目录下的所有旧解压文件; - 也可以在Kudu的Deployment Options页面,点击Delete deployment history清理旧部署包。
2. 自定义ZIP部署的临时路径
在App Service的配置 -> 应用设置中,添加以下配置项:
- 键:
WEBSITE_ZIPDEPLOY_TEMP_PATH - 值:
D:\home\site\temp(Windows)或/home/site/temp(Linux)
这样ZIP部署时会将包解压到持久存储目录,利用App Service Plan的50GB配额,避免临时存储不足。
3. 切换到Run From Package部署模式
在Azure DevOps的App Service Deploy任务中,勾选Run from package file选项。这种模式不需要解压ZIP包,直接从包中运行应用,完全避免解压过程的磁盘占用,同时还能提升部署速度和一致性。
4. 重启App Service
偶尔会出现存储配额统计延迟的情况,重启应用后平台会重新计算临时/持久存储的可用空间,可能解决误报问题。
5. 检查临时存储的其他占用
在Kudu的Process Explorer中查看是否有其他进程(比如日志生成工具、临时文件生成脚本)占用了大量临时存储空间,针对性清理。
内容的提问来源于stack exchange,提问作者Rory McCrossan
相关产品推荐
相关产品推荐

