我將我的Rails應用程序部署到Heroku上,並且我已經將服務器上的訪問鍵設置爲環境變量。但是,爲了在開發環境中測試我的應用程序,我需要將它們初始化到本地機器的某個位置。所以我決定以下。Rails]在開發環境中初始化霧
/config/initailizers/init_aws_locally.rb
ENV['AWS_ACCESS_KEY_ID'] = 'my key'
ENV['AWS_SECRET_ACCESS_KEY'] = 'my secret key'
此文件在.gitignore
但是補充說,當我在開發環境中上傳,我得到這個錯誤信息:
Missing required arguments: aws_access_key_id, aws_secret_access_key
我覺得我忽略了一個簡單的步驟,將我的aws鍵包含在我的開發環境中。但我不知道爲什麼當我已經初始化密鑰時出現錯誤的原因。
爲了供您參考,我使用了carrierwave,S3和Fog。
配置/初始化/ fog.rb
CarrierWave.configure do |config|
config.fog_credentials = {
:provider => 'AWS', # required
:aws_access_key_id => ENV['AWS_ACCESS_KEY_ID'], # required
:aws_secret_access_key => ENV['AWS_SECRET_ACCESS_KEY'], # required
:region => 'us-east-1', # optional, defaults to 'us-east-1'
}
config.fog_directory = 'd' # required
config.fog_public = true # optional, defaults to true
end
謝謝。我感謝您的幫助!
上傳到您的開發?所以你沒有在本地機器上開發?你的開發操作系統是什麼? – Kansha
通過在開發環境中上傳,我的意思是張貼文章與附件。 –