読者です 読者をやめる 読者になる 読者になる

ここにタイトルが入ります

デザイン&プログラミングのことも書くし、それ以外のことも書く。

【Rails?】環境変数の設定について(heroku,local)

dev-tips ruby web service

パスワードやなんちゃらkeyなどをプログラムに書きたくないので、
環境変数を使って設定すること、よくありますよね?


Rubyなら

secret_key = ENV["SEACRET_KEY"]
# ENVハッシュのキーは文字列しか使えませんおそらく!

みたいにしてプログラム内で使いますよね。


ローカルでRailsアプリを開発していて、herokuで公開するという場合
ローカルでの設定とherokuでの設定が必要になるわけです。


ローカルでの環境変数設定

先輩に教えてもらってナルホド、と思い真似しているのですが、
ローカルではRailsプロジェクトのルートディレクトリ直下に置いてある
.rvmrcに環境変数設定のコマンドを書いています。


.rvmrcはルートディレクトリに移動した際読み込まれるので、
プロジェクトに移動した際必要な環境変数を追加してくれます☆


私の.rvmrc例

" 使用するruby(gemset)を設定
rvm use 1.9.3@testapp
" 環境変数の設定
export APP_ID ; APP_ID='hogehoge'


なんかrvmrc内にそのプロダクトの設定がまとまっている感じでよくないですか?
そうでもないですか?


…もちろんrvm使っていれば、の話ですけど。。
まあほかにプロジェクトごとに読み込まれるようなrcファイルがあれば
同じことができるんじゃないですかね(^_^;)


herokuでの環境変数設定


herokuにはちゃんと設定方法があります!

〜大変参考になりました!!〜
Heroku - ソース中のパスワードなどの処理 - komagata


herokuコマンドが使える環境で、コンソールより

$ heroku config:add key=value

と叩くと追加できるそうな。

$ heroku config

で確認できる!



お試しあれ。


※もっといい設定方法がある、もしくは環境変数なんて使う必要ない!
 等あったら教えていただきたいですー