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

在Elastic Beanstalk中无法升级pip导致Django应用部署失败如何解决

根因分析

你使用的container_commands执行时机晚于Elastic Beanstalk默认的依赖安装步骤,升级pip时已经完成了requirements.txt依赖的安装操作,因此旧版pip导致的报错无法被修复。

解决方案

将pip升级操作调整到依赖安装之前执行,步骤如下:

  1. 在.ebextensions目录下新建名为01_pre_upgrade_pip.config的配置文件,内容如下:
files:
  "/opt/elasticbeanstalk/hooks/appdeploy/pre/02_upgrade_pip.sh":
    mode: "000755"
    owner: root
    group: root
    content: |
      #!/bin/bash
      source /opt/python/run/venv/bin/activate
      pip install --upgrade pip setuptools wheel

注:如果你使用的是Amazon Linux 2版本的Elastic Beanstalk Python平台,将虚拟环境路径替换为/var/app/venv/*/bin/activate即可。

  1. 确认.ebextensions目录放置在部署包的根目录,与requirements.txt、Django项目主目录同级,不要嵌套在子目录中。
  2. 重新打包部署即可。

额外排查点

如果调整配置后仍有报错,可优先检查:

  • 配置文件的缩进是否符合YAML语法规范,不要混用空格和制表符
  • 部署日志中是否有权限相关的报错,确保脚本有可执行权限
  • 若pefile包有指定版本要求,可在requirements.txt中明确pefile的兼容版本

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.21 01:45:03