You need to enable JavaScript to run this app. 部署Django应用到AWS Elastic Beanstalk LM2时01_migrate命令报错如何解决
优惠活动
大模型
产品
解决方案
定价
更多

部署Django应用到AWS Elastic Beanstalk LM2时01_migrate命令报错如何解决

Django部署Amazon Linux 2 Elastic Beanstalk迁移报错修复方案

修复后可用的db-migrate.config配置

container_commands:
  01_migrate:
    command: "bash -c 'source /var/app/venv/*/bin/activate && cd /var/app/staging && python3 manage.py migrate --noinput'"
    leader_only: true
option_settings:
  aws:elasticbeanstalk:application:environment:
    DJANGO_SETTINGS_MODULE: packsapp.settings

核心修改点说明

  • 命令外层增加bash -c包裹:Amazon Linux 2环境下container_commands默认使用sh执行,原生不支持source语法,用bash调用可避免语法报错
  • 新增cd /var/app/staging切换工作目录:container_commands执行阶段应用代码存放在临时staging目录,还未同步到/var/app/current路径,不切换目录会找不到manage.py和项目模块
  • 补全--noinput参数:避免Django执行迁移时等待人工确认输入,导致命令超时失败

异常排查建议

如果修改配置后仍报错,可登录对应EC2实例查看/var/log/eb-engine.log日志,定位migrate命令执行的具体报错信息,常见的关联问题包括数据库安全组未放行Elastic Beanstalk实例访问、数据库连接配置错误、迁移文件存在语法冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 16:21:03