【问题标题】:Paperclip config conflicting with AWS Elastic Beanstalk回形针配置与 AWS Elastic Beanstalk 冲突
【发布时间】:2018-07-08 18:31:25
【问题描述】:

我在我的 Rails 5.1 应用程序中使用 Paperclip,并且在我的 development.rb 和 production.rb 中有标准配置:

  config.paperclip_defaults = {
    storage: :s3,
    s3_credentials: {
      bucket: ENV.fetch('S3_BUCKET'),
      access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'),
      secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY'),
      s3_region: ENV.fetch('AWS_REGION'),
    }
  }

我通过 Figaro gem 将 ENV 变量存储在 application.yml 中。

这很好,但我现在正尝试将我的应用程序上传到一个新的 AWS Elastic Beanstalk 应用程序,但构建失败了。在过去 3 个小时左右的时间里查看了所有日志并尝试了各种更改,我将故障范围缩小到我认为 Beanstalk 正在读取 Paperclip ENV 并且感到困惑的事实。

来自日志:

  rake aborted!
<<<
  /var/app/ondeck/config/environments/production.rb:97:in `fetch'
  /var/app/ondeck/config/environments/production.rb:97:in `block in <top (required)>'
  /var/app/ondeck/config/environments/production.rb:1:in `<top (required)>'
  /var/app/ondeck/config/environment.rb:5:in `<top (required)>'
  /opt/rubies/ruby-2.4.3/bin/bundle:23:in `load'
  /opt/rubies/ruby-2.4.3/bin/bundle:23:in `<main>'
  Tasks: TOP => environment

和config/environments/production.rb:97 等同于我的回形针配置中的以下值:

access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID')

我似乎无法在网上找到任何有助于解决此问题的项目。

有什么想法吗?

我可以为两者使用相同的 IAM 用户,以便 ENV 值匹配吗?

【问题讨论】:

  • 请确认您的AWS_ACCESS_KEY_ID 存在于您的配置中......
  • 对于 elastic-beanstalk,您还可以在 AWS 仪表板上的 env 软件配置中设置 env 变量
  • AWS_ACCESS_KEY_ID 在我的 beanstalk 配置中不存在,因为它不是必需的。它在我的本地应用程序中,用于 Paperclip 的 S3 配置。如果我确实将它添加到 Beanstalk,毫无疑问我需要创建一个新的 IAM 用户来访问回形针存储桶和我的应用存储桶?
  • 它是否存在于您的 figaro 环境变量中...?
  • 是的......

标签: ruby-on-rails amazon-web-services paperclip amazon-elastic-beanstalk


【解决方案1】:

将回形针 S3 environment 变量添加到您的 Elastic Beanstalk Environment

怎么做?

转到您的特定Environment

选择Configuration

在Configuration overview 中选择Software 平铺

在最底部,您会看到一个表单部分Environment properties

为您的变量添加 key 和 value 数据

保存并等待您的环境到update。

阅读全文: Elastic Beanstalk Docs

【讨论】:

    猜你喜欢
    • 2018-08-02
    • 2017-02-28
    • 2020-08-27
    • 2017-05-21
    • 2016-12-08
    • 2013-04-11
    • 2017-11-20
    • 2012-12-14
    • 2019-02-13
    相关资源
    最近更新 更多