Railsで環境別に環境変数を管理するdotenv


dotenv」は環境変数を環境ごとにファイルベースで管理するのに便利なGemです。

🏀 インストール手順

Gemfileに以下を追加してbundle installを実行します。

Rubyで使う場合

# .env から環境変数を読み込み
gem 'dotenv'

Railsで使う場合

# .env から環境変数を読み込み
gem 'dotenv-rails', require: 'dotenv/rails-now'
gem 'gem-that-requires-env-variables'

👽 環境変数の設定

.envファイルに次のように環境変数を設定します。

KEY1=value1
KEY2=value2

環境変数の設定ファイルは環境ごとファイルを分けることができます。

ファイル 説明
.env.development 開発環境用の環境変数ファイル
.env.test test環境境用の環境変数ファイル
.env.stating staging環境境用の環境変数ファイル
.env.production 本番環境用の環境変数ファイル
.env.local ローカル環境用

.envファイルには環境変数が入るため、公開されても問題ない設定だけgitに登録し、非公開の設定は別の形で管理するべきです。

😸 ソースコードから環境変数を読み込む

Rubyで使う場合

require 'dotenv'
Dotenv.load
p ENV['KEY1'] # 環境変数を読み込んで表示

Railsで使う場合

# config/application.rb
Bundler.require(*Rails.groups)
Dotenv::Railtie.load
p ENV['KEY2'] # 環境変数を読み込んで表示

🚌 参考リンク

🖥 VULTRおすすめ

VULTR」はVPSサーバのサービスです。日本にリージョンがあり、最安は512MBで2.5ドル/月($0.004/時間)で借りることができます。4GBメモリでも月20ドルです。 最近はVULTRのヘビーユーザーになので、「ここ」から会員登録してもらえるとサービス開発が捗ります!

📚 おすすめの書籍