python - 带有 Django 的 AWS Beanstalk:eb create 抱怨未知配置设置“StaticFile”
问题描述
我正在尝试使用 Elasticbeanstalk 部署 django 应用程序,遵循此设置
https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create-deploy-python-django.html
和这个
https://www.1strategy.com/blog/2017/05/23/tutorial-django-elastic-beanstalk/
在第一次尝试时,在 .ebextension/django.config 中,我有
option_settings:
"aws:elasticbeanstalk:application:environment":
DJANGO_SETTINGS_MODULE: "my_django_path_name.settings"
PYTHONPATH: "$PYTHONPATH"
"aws:elasticbeanstalk:container:python":
WSGIPath: "my_django_path_name/wsgi.py"
StaticFiles: "/static/=www/static/"
打电话时eb create
,它抱怨
ERROR: ServiceError - Configuration validation exception: Invalid option specification (Namespace:
'aws:elasticbeanstalk:container:python', OptionName: 'StaticFiles'): Unknown configuration setting.
所以我拿出了StaticFiles部分,最终变成了
option_settings:
"aws:elasticbeanstalk:container:python":
WSGIPath: "my_django_path_name/wsgi.py"
它仍然抱怨未知的 OptionName:StaticFiles
然后我使用了https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create-deploy-python-container.html#python-namespaces中的示例并稍作调整
option_settings:
aws:elasticbeanstalk:application:environment:
DJANGO_SETTINGS_MODULE: production.settings
aws:elasticbeanstalk:container:python:
WSGIPath: ebdjango.wsgi:application
NumProcesses: 3
NumThreads: 20
但它仍然抱怨同样的事情。
我不知道在哪里读取 StaticFiles 选项名称。它在 .config 文件中不存在。它是缓存在某个地方还是什么?
解决方案
根据评论中的讨论,发现问题是由于从 giteb
部署旧版本而不是应用程序的本地更正版本引起的。
解决方案是将更改推送到 git,以便部署新版本。
推荐阅读
- azure - 能否在 Azure Data Lake 或 Blob 存储上应用 Azure 信息保护?
- maven - 获取多模块maven项目中特定模块的版本
- c# - 帮助选择与给定项目目标框架最佳匹配的给定 Nuget 包目标框架的 NuGet API 是什么?
- ruby - Ruby 枚举有意外的第二遍
- react-native - 使用异步存储将对象存储在 react-native 的数组中
- python - Pandas 中的合并表
- java - 如何告诉 react-native 在多个 JDK 中使用哪个
- javascript - Sonarqube 笑话覆盖率报告在预期的 XML 格式上失败
- javascript - 在 React JS 中的 2 个表对象之间切换
- python - 使用过去结果的矢量化循环