.envファイルについて


はじめに

アプリ制作を進める中でよく分からず.envファイル使用していたのでこちらについて調べて見ました。

.envファイルとは

環境変数を書きことができるファイルのことです。
こちらを使用することで、開発環境と本番環境を切り替えたり、データベースなどの接続情報の変更を行うことができます。
例えば開発環境では簡易的に利用できるsqliteのデータベースに接続し、本番環境ではmysqlのDBに接続といった変更が可能です。

環境変数とは

全てのプログラムで一緒に使える値を入れておく箱のことです。
例えば、アプリのフォルダーの直下に.envファイルに環境変数を書き込めば、そのフォルダー内で環境変数が扱うことができます。

Railsで.envファイルを使用する場合

Gemfileに以下を記述

gem 'dotenv-rails'

gemを インストール

$ bundle install

こちらを使用することで、プロジェクト毎に環境変数が扱えるようになります。

使用例

簡単ではありますが、使用例を紹介します。

.env

本番環境
RAILS_ENV=production 

開発環境
RAILS_ENV=development

データベースのユーザー名
DATABASE_USER=ユーザー名

データベースのパスワード
DATABASE_PASSWORD=パスワード
config/database.yml
default: &default
username: <%= ENV.fetch("DATABASE_USER") %>
password: <%= ENV.fetch("DATABASE_PASSWORD") %>

development:
  <<: *default

production:
  <<: *default

# まとめ
間違えがあったらコメント下さい。