【问题标题】:Can't set AWS Elastic Beanstalk static path with config file无法使用配置文件设置 AWS Elastic Beanstalk 静态路径
【发布时间】:2015-03-18 02:11:38
【问题描述】:

我的项目的.ebextensions 目录中有一个config 文件,其中包含

option_settings:
  "aws:elasticbeanstalk:container:python:staticfiles":
    "/static/": "sitetest/static/"

但我的 EB 环境不会更改 /static/ 的设置以响应将其推送到 AWS。

我可以验证同一目录中的其他 config 设置 - 例如环境变量使用

option_settings:
  "aws:elasticbeanstalk:application:environment":
    SOME_VAR: "foo"

或者对于容器命令使用

container_commands:
  00_syncdb:
    command: "python manage.py db upgrade"
    leader_only: true

按预期行事。

为什么 AWS Elastic Beanstalk 的静态路径没有根据我的配置文件中的设置而改变?

【问题讨论】:

  • 您是否尝试过使用 Web 控制台设置值?
  • 是的,没问题。

标签: amazon-web-services settings amazon-elastic-beanstalk


【解决方案1】:

ebextensions 是较低优先级设置。这意味着,如果您曾经使用 cli/console/api 在 ebextensions 中设置任何内容,ebextension 将不再生效。

您可以使用 cli/api 删除设置,以使 ebextension 再次工作。

使用 EB CLI,您可以使用 eb config,然后从文件中删除相关行。

使用 AWS CLI,您可以使用:

aws elasticbeanstalk update-environment --environment-name MyEnvName --region us-west-2 --options-to-remove Namespace=aws:elasticbeanstalk:container:python:staticfiles,OptionName=/static/

【讨论】:

  • 我不确定我是否跟随。控制台中无法删除/static/ 的设置;我想使用我的.ebextensions/....config 文件来设置它。
  • @raxacoricofallapatorius 不幸的是,控制台中没有办法。但您只需要取消设置一次。 (并确保永远不要使用控制台再次设置它)。或者,您可以使用控制台进行设置。 如果您创建一个全新的环境,ebextension 将起作用。
  • 在我用eb config 编辑可怕的文件之前,并作为参考:发生这种情况是因为我试图更改的设置 (aws:elastic beanstalk:container:python:static files:) 被 不同 i> 一:aws:elastic beanstalk:container:pythonStaticFiles?我在控制台中看到的是后一种设置(而不是前者)吗?我可以在配置我的配置文件中更改 both 吗?我是否需要同时删除两者才能正常工作?
  • 控制台设置不能被覆盖(它导致配置设置被忽略,显然没有记录)记录在任何地方吗?
  • @orome aws:elasticbeanstalk:container:python 中的 StaticFiles 设置是否记录在任何地方?它不在the AWS docs 上,到目前为止我看到的唯一地方是您的评论和eb config 文件中。
猜你喜欢
  • 2013-04-11
  • 2018-04-20
  • 2021-01-21
  • 2019-12-02
  • 2018-08-09
  • 2021-04-16
  • 2017-02-28
  • 2020-08-27
  • 2017-05-21
相关资源
最近更新 更多