Aws::Sigv4::Errors::MissingCredentialsError」
AWSのEC2のデプロイで、エラーの原因が分からなくて苦労したので備忘録。
EC2へデプロイ時に「Aws::Sigv4::Errors::MissingCredentialsError」が出るので、
.envに原因があるのでは?と思い、AWS_ACCESS_KEY_IDを小文字から大文字に変えたり、
あらゆる記事で記述方法を確認しても、、ずっと同じエラー文。。。
結論
先に結論から書きます。アプリのrake secretが、インスタンスを再起動したら、なぜか乱数が変わっていて、エラーが出ていました。EC2のsecrets.ymlを新しく生成されたものを記述し直して、デプロイをすると成功しました。
今回私がエラー発生から解決まで打ったコマンド
[ローカル]
$ bundle exec rake secret
→ 乱数をコピーしておく
[EC2にて実施]
secrets.ymlファイルディレクトリに移動する。
$ cd /var/www/アプリケーション名/shared/config
$ vi secrets.yml
production:
secret_key_base: 生成した乱数をコピペし直す
これで無事デプロイが出来ました。