メールを送るサービス Sendgrid を使ってHerokuでメール送信してみました
アカウントはheroku Addonを入れると勝手に作られ、Sendgridにログインすると利用状況など見れます
無料のstarterプランだと1日400通まで送れます
HerokunにAddonを入れて使います
https://elements.heroku.com/addons/sendgrid
herokuのaddonを入れるためにはクレジットカードの登録が必要になります
https://devcenter.heroku.com/articles/sendgrid#ruby-rails
を参考に設定をします
$ heroku addons:add sendgrid:starter
$ vim config/environments/production.rb
Rails.application.configure do
# 省略
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => 'smtp.sendgrid.net',
:port => '587',
:authentication => :plain,
:user_name => ENV['SENDGRID_USERNAME'],
:password => ENV['SENDGRID_PASSWORD'],
:domain => 'heroku.com',
:enable_starttls_auto => true
}
end
USERNAMEとPASSWORDの確認は次のコマンドでできます
$ heroku config:get SENDGRID_USERNAME
$ heroku config:get SENDGRID_PASSWORD
動作確認するには
$ heroku run rails console
irb> ActionMailer::Base.mail(from: “sample@sample.com”, to: “sampleto@sample.com”, subject: “題名”, body: “本文”).deliver
で確認できます