Azure App Service非Docker部署Django依赖未安装且SSH连接失败问题
Django部署到Azure App Service(官方Python运行时)问题解决方案
依赖未安装(ModuleNotFoundError: No module named 'django')问题修复
核心原因
az webapp up部署时默认未开启部署时构建逻辑,不会自动执行pip install安装requirements.txt依赖,和部署方式无关,是应用配置缺失导致。
修复步骤
- 进入Azure门户对应App Service实例,左侧导航栏选择配置,切换到应用设置标签页,添加如下配置:
- 键:
SCM_DO_BUILD_DURING_DEPLOYMENT,值:true - 键:
PYTHON_VERSION,值和本地开发使用的Python大版本保持一致,例如3.9
- 键:
- 点击页面顶部保存按钮,等待应用自动重启完成。
- 重新执行
az webapp up命令部署,建议显式指定运行时版本,示例:az webapp up --runtime PYTHON:3.9 --name <你的应用名称> --resource-group <你的资源组名称> - 部署完成后等待3-5分钟,查看日志流会出现
Running pip install -r requirements.txt的执行日志,依赖安装完成后Django启动报错就会消失。
SSH连接报错问题修复
核心原因
你看到的端口不可达报错不是网络配置问题,是因为应用依赖缺失启动失败,对应容器异常退出,内置SSH服务根本没有启动,完全不需要配置2222端口的白名单规则。
修复步骤
- 按上述步骤完成依赖修复,确保应用可以正常启动,容器正常运行后,再尝试SSH连接即可成功。
- 官方提供的Python运行时已经默认内置SSH支持,不需要额外做端口配置、镜像修改操作。
内容的提问来源于stack exchange,提问作者ats-myo
相关产品推荐
相关产品推荐

