2016-10-24 4 views
1

これは愚かな質問かもしれません。私はRORには新しいです。herokuに秘密の資格情報を必要とするwebappを配備する方法は? Rails 5

AWS S3に接続するWebアプリケーションがあり、そこからオブジェクトをアップロードしてダウンロードすることができます。現在は地元でのみ運営されています。

gitにプッシュするときに秘密情報を保持するために、ワークスペースフォルダの外側に配置されたJSONドキュメントを介して接続が行われています。 私がしようとすると、(!当たり前..私は知っている)

$ heroku run rails db:migrate 

私は次のエラーを取得する:

Errno::ENOENT: No such file or directory @ rb_sysopen - /Users/Jen/workspace/secrets.json 

私はウェブサイトに入る皆のためづけし、このWebアプリケーションを持っているために何ができますか、私の信任状を秘密にしておく

ありがとうございました!

+0

私はこれをこの件に関して正確に書いていますが、まだ関連しているはずです(コマンドがまったく同じかどうかを調べるにはgoogleが必要かもしれません):http://rubyglasses.blogspot.com.au/ 2013/09/link-dont-publish-your-secret-keys-on.html tl; dr:環境変数を使用します –

+0

d jsonファイルの前にENVで保存しますか? – catch22

+0

それは私がしたことです...あなたにとって完璧な解決策ではないかもしれませんが、試してみる価値はありますか?それはgitを守るために見つけた唯一の方法ですが、私はherokuに同じコードを使用することができます。 –

答えて

1

これでgem 'figaro'が機能します。それには、Herokuの生産ENV変数を設定するコマンドが付属しています。

Gemfile> 宝石 'フィガロ'

$ bundle exec figaro install 

は、設定/ application.ymlファイルを作成します.gitignoreに追加されました。

$ figaro heroku:set -e production 

、これはそれです:):あなたのENV変数とHerokuのを設定するには

development: 
AWS_ACCESS_KEY_ID: BLABLABLA 
AWS_SECRET_ACCESS_KEY: XYZXYZ 

production: 
AWS_ACCESS_KEY_ID: BLABLABLA 
AWS_SECRET_ACCESS_KEY: XYZXYZ 

:このファイルは、のような変数を、含まれている必要があります(このファイルは、Githubのにアップロードされません)

関連する問題