Help us understand the problem. What is going on with this article?

チームでmaster keyを共有し、本番環境にも設定する方法【環境変数】

環境変数とは何か?

マスターkeyなどをGITHUBなどにあげると、全員にキーがバレてしまうので、隠さないといけません。
そこで、環境変数の出番というわけです。

環境変数の設定方法は?

環境変数の設定方法

$expert 変数名="hogehogehoge"
$ export RAILS_MASTER_KEY=マスターキーを
↑マスターキーを設定する場合 

チームでmaster keyを共有する方法

rails new を行った際に、gitignoreにmaster keyがデフォルトで入っているが、メンバー開発を行い際に、githubにプッシュした際にmaster keyが無い。

全員でymlとmaster keyを共有するには
1.slackなどでmaster keyを共有
2.他の人は自分でconfig内にmaster keyファイルを作成し、受け取った内容をコピーする
3.slackを削除する

本番環境にもmaster keyを渡さなければならない

本番環境からgitをpullした際にgitignoreにmaster keyを入力していると、本番環境にpullできないので、本番環境にも環境変数を与えるようにしなければなりません。

本番環境では、「etc/environments」ファイルに記述を行うことで環境変数を設定することができます。

その為に行うのが、本番環境にログイン→etc/environment→master keyの手順です。

コンソール
$ ssh -i ~/.ssh/(pemファイル名) ec2-user@(EC2のElastic IP)

[ec2-user]$ sudo vim /etc/environment

ここで、iを押すとコードが打てるようになります。

RAILS_MASTER_KEY='master.keyの値'

これで完了なので、exitで出てから確認しましょう!

[ec2-user]$ exit
$ ssh -i ~/.ssh/(pemファイル名) ec2-user@(EC2のElastic IP)
[ec2-user]$ env | grep RAILS_MASTER_KEY

以上で、master keyを環境変数を設定し、チームメンバーに共有、本番環境からpullすることができました。

zetawork
4月に転職します。岩城です。よろしくお願いします。
https://ze-ta.work
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away