LoginSignup
34
30

More than 5 years have passed since last update.

rails/herokuで環境変数を使ってsecret keyなどを管理する

Last updated at Posted at 2013-11-26

パスワードやauth, awsのsecret keyなどコードに直接埋め込みたくない情報を管理する方法として環境変数を使うのが良さそうだったので、Mac、herokuでの設定方法を調べたのでまとめます。

ruby/railsで環境変数を参照するには以下のように呼び出します。
var = ENV['HOGEHOGE']

Macでの環境変数の設定

  1. $User/.bashrcを開き、以下のように変数を追加。
    export HOGEHOGE="xxxxxxxxxxxxxxxxxxxx"
    HOGEHOGEに変数名、xxxに値が入ります。改行コードLF(unix)で保存します。

  2. ターミナルで以下のコマンドを入力すると、.bashrcに保存した内容がすぐに反映されます。
    source ~/.bashrc

  3. 環境変数の確認するにはターミナルで以下のコマンドを入力します。
    すべての環境変数
    printenv
    特定の環境変数
    echo $HOGEHOGE

  4. ここまで設定したところ、再起動した時に.bashrcの内容がまた反映されなくなっていました。$User/.bash_profileを開き、以下のコマンドを追加します。

if [ -f ~/.bashrc ] ; then
. ~/.bashrc
fi

.bash_profileはログイン時に読み込まれるファイルです。
ログイン時にのみ設定されればOKならexport〜を最初から.bash_profileに書いてもいいようです。
【追記】ターミナル以外の開発環境から実行する場合は.bash_profileに1の内容を書かないとダメなようです。

Herokuでの環境変数の設定

設定コマンド
heroku config:add HOGEHOGE="xxxxxxx"

登録した環境変数の確認コマンド
heroku config

以上です。

34
30
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
34
30