search
LoginSignup
1

More than 1 year has passed since last update.

posted at

updated at

master.keyが無い問題の解決への道 [config/master.key: No such file or directory]

最初に

カレンダー企画2020の8日目
プログラミングの勉強を始めて3ヵ月程経ったので学んだことのメモをアウトプットとして記事に残します。
これからプログラミングの世界に入る人の手助けになれたら嬉しい限りです。
間違っていたり、言葉が違っていたり、誤解されるような言葉があったら教えてください^^
言葉を長々と読みづらかったら申し訳ありません。少しずつなれてがんばります。

deployをしようとした時にmaster.keyがなくて困った

こんなのがエラーで出てくる^^;

ターミナル
config/master.key: No such file or directory

環境

Rails 5.2.4

無くなった原因

git push時にmaster.keyは除外されるようになっているのでGitHub上には残らない(GitHubにあがるとまずい^^;)
git cloneを行ったりするとmaster.keyがない状態になる。(私はこれが原因でした!)
他にもあるのかもですが分からないです!

解決

  1. アプリケーションのディレクトリに移動
  2. config/credentials.yml.encというファイルがあると思う。それを削除します
  3. そうするとconfigの中にはmaster.keycredentials.yml.encがない状態になる
  4. これをターミナルで実行
ターミナル
sudo EDITOR="vi" rails credentials:edit
  1. するとconfigの中にmaster.keycredentials.yml.enc現れる。

もし、このあとdeployをする場合はpushをしてdeploy環境下でpullを忘れずに!
credentials.yml.encの中身が変わっているのでこれをしないとまた違うエラーが出るよ!(経験済!^^)

そもそもmaster.keycredentials.yml.encって何??

credentials.yml.encが暗号化されているよう…
master.keyを使って復号化するみたい…

2つはセットでどちらかが欠けてもダメってことですね!(調べて見て鍵と鍵穴の関係で説明されていました!)
とくにmaster.keyは大事なので保管方法にも気をつけた方が良いみたいです!

これを見て勉強しました!(良かったらどうぞ)
参考サイト:https://techtechmedia.com/credentials-masterkey-rails/#masterkey-2

最後に

自分が詰まったエラーだったのでメモのつもりで残しました!

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
What you can do with signing up
1