地方でリモートワーク in Iwate

東京の受託開発会社でリモートワークしてます。

Aws::Errors::MissingCredentialsError: unable to sign request without credentials setが出た

スポンサーリンク

f:id:ihatov08:20170315165347j:plain

AWS SESでAws::Errors::MissingCredentialsErrorが出た

RailsのmailerでAWS SESを使っていたのですが、ローカル開発環境では動くのですが、本番環境ではAws::Errors::MissingCredentialsErrorが出てしまいました。 Credential情報は環境変数にもたせていました。

解決方法:unicornの再起動

unicornを再起動したら認証が通りました。 deployにはcapistranoを使っているのですが、unicorn:restartではすぐに環境変数を読み込んでくれないようです。 capistrano3-unicornを導入していたので、

$ cap production unicorn:stop
$ cap production unicorn:start

で環境変数を読み込んでくれるようになりました。 しかし、この方法だと数分ダウンタイムが生じてしまうので、他にいい方法を模索中です。