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

在Azure Python WebApp Zip部署(Oryx)中安装Linux依赖

在Azure App Service Python应用(Zip部署)中安装Linux依赖包的可行方案

方法1:自定义部署脚本(适配Oryx流程)

Oryx支持执行自定义构建脚本,你可以在部署阶段嵌入系统包安装逻辑:

  1. 在项目根目录创建.deployment配置文件,指定自定义脚本路径:
[config]
command = bash deploy.sh
  1. 编写deploy.sh脚本,包含依赖安装和Oryx原生构建流程:
#!/bin/bash

# 替换为你实际需要的Linux依赖包,示例为PostgreSQL和OpenCV的依赖
apt-get update && apt-get install -y --no-install-recommends libpq-dev libgl1-mesa-glx

# 调用Oryx完成Python应用的构建部署,根据你的Python版本调整platform-version
oryx build "$DEPLOYMENT_SOURCE" -o "$DEPLOYMENT_TARGET" --platform python --platform-version 3.10
  1. 将.deployment、deploy.sh与代码一起打包成Zip,直接部署到App Service即可。

方法2:启动命令补装(兜底方案)

如果构建阶段安装的包在运行时异常丢失,可通过启动命令补装:
在Azure门户进入App Service的「配置」→「常规设置」,将启动命令修改为:

apt-get install -y libpq-dev libgl1-mesa-glx && gunicorn --bind=0.0.0.0 --timeout 600 app:app
  • 替换libpq-dev...为你的目标依赖包,gunicorn...为应用实际的启动命令

注意事项

  • 确保deploy.sh有可执行权限:本地打包前执行chmod +x deploy.sh,或确保脚本开头的#!/bin/bash正确
  • 使用--no-install-recommends参数减少冗余依赖,避免部署超时或存储空间不足
  • 若安装包需要sudo权限,无需手动添加,App Service部署环境默认具备足够权限

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 20:27:22