AWS Elastic BeanStalk 部署错误总结

6 篇文章 0 订阅

1. [ERROR] An error occurred during execution of command [app-deploy] - [StageApplication]. Stop running the command. Error: chown /var/app/staging/bin/python: no such file or directory

我自己本地的开发环境是python3.9 + django3.2,但是aws上文档要求python3.7 + django2.2. 我猜是本地开发和部署要求版本不同所以才出现这样的错误。
解决方法:在虚拟环境安装python3.7 + django2.2然后新建项目,把代码复制到此新项目中。循序渐进,copy一点部署一点,发现成功了。

**

2. aws eb上的网站不显示static文件。

**

解决方法:.ebextensions/static-files.config下添加:

option_settings:
  aws:elasticbeanstalk:environment:proxy:staticfiles:
    /static: static

settings.py文件内容如下:

STATIC_URL = '/static/'
STATIC_ROOT = 'static'
# STATIC_ROOT = os.path.join(BASE_DIR, "static")
# STATICFILES_DIRS = (
#     os.path.join(BASE_DIR, "static"),
# )

部署即可。
https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-staticfiles.html#environment-cfg-staticfiles.namespace

3. aws指令错误:

aws更新很快,很多指令也更新了。如果需要migrate data:指令如下,位于db-migrate。config:

container_commands:
  01_migrate:
    command: "source /var/app/venv/*/bin/activate && python3 manage.py migrate"
    leader_only: true
option_settings:
  aws:elasticbeanstalk:application:environment:
    DJANGO_SETTINGS_MODULE: greatKartForAWS.settings
    

4. media 文件不显示,表示无权限。

解决方案: 在settings文件的installed apps 注释掉

# 'django.contrib.staticfiles',

5. AttributeError: ‘str’ object has no attribute ‘decode’

解决方法,升级Django版本即可,如,从2.2 --> 3.0.2.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值