CarrierWave和AWS S3的问题。

时间:2014-04-27 18:46:58

标签: ruby-on-rails amazon-web-services amazon-s3 carrierwave

我在Ninefold上部署了我的应用程序,但在尝试上传图片时崩溃了。日志表明我错过了我的AWS凭证:

ArgumentError (Missing required arguments: aws_access_key_id, aws_secret_access_key)

但是我很确定我已经使用Fog和我的.env文件正确设置了它们。 CarrierWave初始化程序现在看起来像这样:

CarrierWave.configure do |config|

config.fog_credentials = {
    :provider               => 'AWS',                             # required
    :aws_access_key_id      => ENV['S3_KEY'],                     # required
    :aws_secret_access_key  => ENV['S3_SECRET'],                  # required
    :region                 => 'us-east-1'                  # optional, defaults to 'us-east1'
    }
    config.fog_directory  = ENV['S3_BUCKET'],                     # required
end

有关如何使其正常工作的任何建议?不知道还有什么其他信息,但如果您需要更多信息来帮我解决,请告诉我。

1 个答案:

答案 0 :(得分:1)

您是否在应用中设置了环境变量?

您需要在app deploy下的Environment Variables部分添加一些带有相关名称的变量。

S3_KEY
S3_SECRET
S3_BUCKET

您的亚马逊帐户应该有相关的详细信息。