####エラー内容
git clone後、scpコマンドにてmaster.keyをEC2へアップロードしようとした際に
config/master.key: No such file or directory
が発生してしまう。
####原因
ローカルにあるデータの「credentials.yml.enc」「master.key」と、EC2上にあるデータの「credentials.yml.enc」「master.key」が一致しないため、エラーが発生していました。
####解決法
①ローカルにあるcredentials.yml.enc(configディレクトリ内にあります)を削除ください。
→右クリックで直接削除しても問題ないです。
②ローカルのアプリケーションのルートディレクトリにて「 EDITOR=vim rails credentials:edit」コマンドを実行ください。
新たにcredentials.yml.encとmaster.keyが再生成されます。
③作成されたcredentials.yml.encとmaster.keyを保存(:wq)した後、
「scp -i ~/.ssh/practice-aws.pem config/master.key ec2-user@IPアドレス:アプリケーション名/config」コマンドを実行すると、EC2へ送信できます。
####最後に
私がこのエラーに出会した時、解決するまでにかなり時間がかかりました…。
この記事が、同じエラーと闘う人の助けになりますように。